Function at 0x1003a390
Capabilities:
Parse pe header

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1006ec54
mov eax, dword fs:[0]
push eax
sub esp, 0xe8
mov eax, dword [0x1009500c]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov eax, dword fs:[0x2c]
mov ecx, dword [0x10096e34]
push 0x100984f0
push 0
push 0
mov esi, dword [eax + ecx*4]
mov dword [ebp - 0x1c], 0x831c8691
mov eax, dword [esi + 0x34a0]
test al, 1
jne 0x1003a43c
or eax, 1
mov dword [esi + 0x34a0], eax
mov dword [ebp - 4], 0
xorps xmm0, xmm0
movlpd qword [ebp - 0x18], xmm0
mov edx, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x18]
mov byte [esi + 0x169c], 1
nop dword [eax]
mov al, byte [ebp + ecx - 0x1c]
mov byte [ecx + esi + 0x1698], al
add ecx, 1
adc edx, 0
jne 0x1003a428
cmp ecx, 4
jb 0x1003a410
push 0x1007cd00
call fcn.10067577
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x1698]
mov ecx, edi
call fcn.1005c520
mov ecx, edi
mov dword [ebp - 0x6c], 0
mov dword [ebp - 0x68], 0xf
mov byte [ebp - 0x7c], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1003a460
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x7c]
call fcn.100643a0
mov dword [ebp - 4], 1
movaps xmm0, xmmword [0x10087540]
mov eax, dword [esi + 0x320]
mov dword [ebp - 0x28], 0xe61e8fc7
mov word [ebp - 0x24], 0x39b2
movups xmmword [ebp - 0x38], xmm0
test al, 1
jne 0x1003a4e9
or eax, 1
mov dword [esi + 0x320], eax
mov byte [ebp - 4], 2
xorps xmm0, xmm0
movlpd qword [ebp - 0x18], xmm0
mov edx, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x18]
mov byte [esi + 0xeae], 1
nop
mov al, byte [ebp + ecx - 0x38]
mov byte [ecx + esi + 0xe98], al
add ecx, 1
adc edx, 0
jne 0x1003a4d8
cmp ecx, 0x16
jb 0x1003a4c0
push 0x1007cd50
call fcn.10067577
add esp, 4
mov byte [ebp - 4], 1
lea edi, [esi + 0xe98]
mov ecx, edi
call fcn.1005c580
mov ecx, edi
mov dword [ebp - 0x54], 0
mov dword [ebp - 0x50], 0xf
mov byte [ebp - 0x64], 0
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1003a510
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x64]
call fcn.100643a0
push 0x10096078
lea edx, [ebp - 0x64]
mov byte [ebp - 4], 3
lea ecx, [ebp - 0xac]
call fcn.10064540
add esp, 4
lea ecx, [ebp - 0x7c]
mov byte [ebp - 4], 4
push ecx
push eax
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x94]
call fcn.10065bc0
sub esp, 0x18
mov byte [ebp - 4], 5
mov ecx, esp
mov dword [ebp - 0x1c], esp
lea edx, [ebp - 0x94]
push 0x10096498
call fcn.10064540
add esp, 4
mov byte [ebp - 4], 6
movaps xmm0, xmmword [0x10087e40]
mov eax, dword [esi + 0x1a60]
mov word [ebp - 0x3c], 0xedcd
movups xmmword [ebp - 0x4c], xmm0
test al, 1
jne 0x1003a5e9
or eax, 1
mov dword [esi + 0x1a60], eax
mov byte [ebp - 4], 7
xorps xmm0, xmm0
movlpd qword [ebp - 0x18], xmm0
mov edx, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x18]
mov byte [esi + 0x2d36], 1
nop dword [eax]
nop dword [eax + eax]
mov al, byte [ebp + ecx - 0x4c]
mov byte [esi + ecx + 0x2d24], al
add ecx, 1
adc edx, 0
jne 0x1003a5d8
cmp ecx, 0x12
jb 0x1003a5c0
push 0x1007cda0
call fcn.10067577
add esp, 4
mov byte [ebp - 4], 6
lea edi, [esi + 0x2d24]
mov ecx, edi
call fcn.1005c5e0
sub esp, 0x18
mov ecx, edi
mov edx, esp
lea ebx, [ecx + 1]
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0xf
mov byte [edx], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1003a611
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.100643a0
mov ecx, dword [0x100997b8]
mov eax, dword [ecx]
mov byte [ebp - 4], 5
call dword [eax + 4]
mov byte [ebp - 4], 4
mov edx, dword [ebp - 0x80]
cmp edx, 0x10
jb 0x1003a66d
mov ecx, dword [ebp - 0x94]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003a663
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003a751
push edx
push ecx
call fcn.100674c0
add esp, 8
mov byte [ebp - 4], 3
mov edx, dword [ebp - 0x98]
mov dword [ebp - 0x84], 0
mov dword [ebp - 0x80], 0xf
mov byte [ebp - 0x94], 0
cmp edx, 0x10
jb 0x1003a6c3
mov ecx, dword [ebp - 0xac]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003a6b9
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003a751
push edx
push ecx
call fcn.100674c0
add esp, 8
mov byte [ebp - 4], 1
mov edx, dword [ebp - 0x50]
mov dword [ebp - 0x9c], 0
mov dword [ebp - 0x98], 0xf
mov byte [ebp - 0xac], 0
cmp edx, 0x10
jb 0x1003a712
mov ecx, dword [ebp - 0x64]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003a708
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003a751
push edx
push ecx
call fcn.100674c0
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x68]
mov dword [ebp - 0x54], 0
mov dword [ebp - 0x50], 0xf
mov byte [ebp - 0x64], 0
cmp edx, 0x10
jb 0x1003a761
mov ecx, dword [ebp - 0x7c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003a757
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x1003a757
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.100674c0
add esp, 8
mov ecx, dword [0x1009d9e0]
mov edx, 0x10096450
cmp dword [0x10096464], 0x10
push 0x100984f0
cmovae edx, dword [0x10096450]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x1003ca09
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x2824]
mov dword [ebp - 0x1c], 0x25262c35
push 0x100984f0
push 0
push 0
test al, 1
jne 0x1003a80c
or eax, 1
mov dword [esi + 0x2824], eax
mov dword [ebp - 4], 8
xorps xmm0, xmm0
movlpd qword [ebp - 0x18], xmm0
mov edx, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x18]
mov byte [esi + 0x2304], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x1c]
mov byte [esi + ecx + 0x2300], al
add ecx, 1
adc edx, 0
jne 0x1003a7f8
cmp ecx, 4
jb 0x1003a7e0
push 0x1007cc10
call fcn.10067577
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x2300]
mov ecx, edi
call fcn.1005c400
mov ecx, edi
mov dword [ebp - 0x84], 0
mov dword [ebp - 0x80], 0xf
mov byte [ebp - 0x94], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1003a836
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x94]
call fcn.100643a0
mov dword [ebp - 4], 9
movaps xmm0, xmmword [str._kLp]
mov eax, dword [esi + 0x40f0]
mov dword [ebp - 0x28], 0x40242563
mov word [ebp - 0x24], 0xf762
movups xmmword [ebp - 0x38], xmm0
test al, 1
jne 0x1003a8c9
or eax, 1
mov dword [esi + 0x40f0], eax
mov byte [ebp - 4], 0xa
xorps xmm0, xmm0
movlpd qword [ebp - 0x18], xmm0
mov edx, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x18]
mov byte [esi + 0x1d86], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x38]
mov byte [ecx + esi + 0x1d70], al
add ecx, 1
adc edx, 0
jne 0x1003a8b8
cmp ecx, 0x16
jb 0x1003a8a0
push 0x1007cc60
call fcn.10067577
add esp, 4
mov byte [ebp - 4], 9
lea edi, [esi + 0x1d70]
mov ecx, edi
call fcn.1005c460
mov ecx, edi
mov dword [ebp - 0x54], 0
mov dword [ebp - 0x50], 0xf
mov byte [ebp - 0x64], 0
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1003a8f0
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x64]
call fcn.100643a0
push 0x10096268
lea edx, [ebp - 0x64]
mov byte [ebp - 4], 0xb
lea ecx, [ebp - 0xac]
call fcn.10064540
add esp, 4
lea ecx, [ebp - 0x94]
mov byte [ebp - 4], 0xc
push ecx
push eax
push dword [ebp - 0x3e]
lea ecx, [ebp - 0x7c]
call fcn.10065bc0
sub esp, 0x18
mov byte [ebp - 4], 0xd
mov ecx, esp
mov dword [ebp - 0x40], esp
lea edx, [ebp - 0x7c]
push 0x10096498
call fcn.10064540
add esp, 4
mov byte [ebp - 4], 0xe
movaps xmm0, xmmword [str.r3oL_]
mov eax, dword [esi + 0x3580]
mov word [ebp - 0x24], 0x4769
movups xmmword [ebp - 0x34], xmm0
test al, 1
jne 0x1003a9ba
or eax, 1
mov dword [esi + 0x3580], eax
mov byte [ebp - 4], 0xf
xorps xmm0, xmm0
movlpd qword [ebp - 0x18], xmm0
mov edx, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x18]
mov byte [esi + 0x1322], 1
mov al, byte [ebp + ecx - 0x34]
mov byte [ecx + esi + 0x1310], al
add ecx, 1
adc edx, 0
jne 0x1003a9a9
cmp ecx, 0x12
jb 0x1003a991
push 0x1007ccb0
call fcn.10067577
add esp, 4
mov byte [ebp - 4], 0xe
lea edi, [esi + 0x1310]
mov ecx, edi
call fcn.1005c4c0
sub esp, 0x18
mov ecx, edi
mov edx, esp
lea ebx, [ecx + 1]
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0xf
mov byte [edx], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1003a9e2
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.100643a0
mov ecx, dword [0x100997b8]
mov eax, dword [ecx]
mov byte [ebp - 4], 0xd
call dword [eax + 4]
mov byte [ebp - 4], 0xc
mov edx, dword [ebp - 0x68]
cmp edx, 0x10
jb 0x1003aa3b
mov ecx, dword [ebp - 0x7c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003aa31
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003ab1c
push edx
push ecx
call fcn.100674c0
add esp, 8
mov byte [ebp - 4], 0xb
mov edx, dword [ebp - 0x98]
mov dword [ebp - 0x6c], 0
mov dword [ebp - 0x68], 0xf
mov byte [ebp - 0x7c], 0
cmp edx, 0x10
jb 0x1003aa8b
mov ecx, dword [ebp - 0xac]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003aa81
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003ab1c
push edx
push ecx
call fcn.100674c0
add esp, 8
mov byte [ebp - 4], 9
mov edx, dword [ebp - 0x50]
mov dword [ebp - 0x9c], 0
mov dword [ebp - 0x98], 0xf
mov byte [ebp - 0xac], 0
cmp edx, 0x10
jb 0x1003aada
mov ecx, dword [ebp - 0x64]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003aad0
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003ab1c
push edx
push ecx
call fcn.100674c0
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x80]
mov dword [ebp - 0x54], 0
mov dword [ebp - 0x50], 0xf
mov byte [ebp - 0x64], 0
cmp edx, 0x10
jb 0x1003ab2c
mov ecx, dword [ebp - 0x94]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003ab22
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x1003ab22
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.100674c0
add esp, 8
mov ecx, dword [0x1009d9e0]
mov edx, 0x10096450
cmp dword [0x10096464], 0x10
push 0x100984f0
cmovae edx, dword [0x10096450]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x1003ca09
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x3394]
mov dword [ebp - 0x1c], 0x59be0645
push 0x100984f0
push 0
push 0
test al, 1
jne 0x1003abce
or eax, 1
mov dword [esi + 0x3394], eax
mov dword [ebp - 4], 0x10
xorps xmm0, xmm0
movlpd qword [ebp - 0x18], xmm0
mov edx, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x18]
mov byte [esi + 0x3460], 1
mov al, byte [ebp + ecx - 0x1c]
mov byte [ecx + esi + 0x345c], al
add ecx, 1
adc edx, 0
jne 0x1003abba
cmp ecx, 4
jb 0x1003aba2
push 0x1007cb20
call fcn.10067577
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x345c]
mov ecx, edi
call fcn.1005c2e0
mov ecx, edi
mov dword [ebp - 0x84], 0
mov dword [ebp - 0x80], 0xf
mov byte [ebp - 0x94], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1003abf8
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x94]
call fcn.100643a0
mov dword [ebp - 4], 0x11
movaps xmm0, xmmword [0x10087ee0]
mov eax, dword [esi + 0x2a0]
mov dword [ebp - 0x28], 0x3cbc0f13
mov word [ebp - 0x24], 0x7784
movups xmmword [ebp - 0x38], xmm0
test al, 1
jne 0x1003ac89
or eax, 1
mov dword [esi + 0x2a0], eax
mov byte [ebp - 4], 0x12
xorps xmm0, xmm0
movlpd qword [ebp - 0x18], xmm0
mov edx, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x18]
mov byte [esi + 0x3292], 1
nop dword [eax]
mov al, byte [ebp + ecx - 0x38]
mov byte [ecx + esi + 0x327c], al
add ecx, 1
adc edx, 0
jne 0x1003ac78
cmp ecx, 0x16
jb 0x1003ac60
push 0x1007cb70
call fcn.10067577
add esp, 4
mov byte [ebp - 4], 0x11
lea edi, [esi + 0x327c]
mov ecx, edi
call fcn.1005c340
mov ecx, edi
mov dword [ebp - 0x54], 0
mov dword [ebp - 0x50], 0xf
mov byte [ebp - 0x64], 0
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1003acb0
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x64]
call fcn.100643a0
push 0x10096438
lea edx, [ebp - 0x64]
mov byte [ebp - 4], 0x13
lea ecx, [ebp - 0xac]
call fcn.10064540
add esp, 4
lea ecx, [ebp - 0x94]
mov byte [ebp - 4], 0x14
push ecx
push eax
push dword [ebp - 0x3e]
lea ecx, [ebp - 0x7c]
call fcn.10065bc0
sub esp, 0x18
mov byte [ebp - 4], 0x15
mov ecx, esp
mov dword [ebp - 0x40], esp
lea edx, [ebp - 0x7c]
push 0x10096498
call fcn.10064540
add esp, 4
mov byte [ebp - 4], 0x16
movaps xmm0, xmmword [0x10087650]
mov eax, dword [esi + 0x598]
mov word [ebp - 0x24], 0x6d19
movups xmmword [ebp - 0x34], xmm0
test al, 1
jne 0x1003ad7a
or eax, 1
mov dword [esi + 0x598], eax
mov byte [ebp - 4], 0x17
xorps xmm0, xmm0
movlpd qword [ebp - 0x18], xmm0
mov edx, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x18]
mov byte [esi + 0x2332], 1
mov al, byte [ebp + ecx - 0x34]
mov byte [ecx + esi + 0x2320], al
add ecx, 1
adc edx, 0
jne 0x1003ad69
cmp ecx, 0x12
jb 0x1003ad51
push 0x1007cbc0
call fcn.10067577
add esp, 4
mov byte [ebp - 4], 0x16
lea edi, [esi + 0x2320]
mov ecx, edi
call fcn.1005c3a0
sub esp, 0x18
mov ecx, edi
mov edx, esp
lea ebx, [ecx + 1]
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0xf
mov byte [edx], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1003ada2
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.100643a0
mov ecx, dword [0x100997b8]
mov eax, dword [ecx]
mov byte [ebp - 4], 0x15
call dword [eax + 4]
mov byte [ebp - 4], 0x14
mov edx, dword [ebp - 0x68]
cmp edx, 0x10
jb 0x1003adfb
mov ecx, dword [ebp - 0x7c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003adf1
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003aedc
push edx
push ecx
call fcn.100674c0
add esp, 8
mov byte [ebp - 4], 0x13
mov edx, dword [ebp - 0x98]
mov dword [ebp - 0x6c], 0
mov dword [ebp - 0x68], 0xf
mov byte [ebp - 0x7c], 0
cmp edx, 0x10
jb 0x1003ae4b
mov ecx, dword [ebp - 0xac]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003ae41
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003aedc
push edx
push ecx
call fcn.100674c0
add esp, 8
mov byte [ebp - 4], 0x11
mov edx, dword [ebp - 0x50]
mov dword [ebp - 0x9c], 0
mov dword [ebp - 0x98], 0xf
mov byte [ebp - 0xac], 0
cmp edx, 0x10
jb 0x1003ae9a
mov ecx, dword [ebp - 0x64]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003ae90
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003aedc
push edx
push ecx
call fcn.100674c0
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x80]
mov dword [ebp - 0x54], 0
mov dword [ebp - 0x50], 0xf
mov byte [ebp - 0x64], 0
cmp edx, 0x10
jb 0x1003aeec
mov ecx, dword [ebp - 0x94]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003aee2
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x1003aee2
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.100674c0
add esp, 8
mov ecx, dword [0x1009d9e0]
mov edx, 0x10096450
cmp dword [0x10096464], 0x10
push 0x100984f0
cmovae edx, dword [0x10096450]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x1003ca09
mov ecx, 0x100984f0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1003af20
sub ecx, edx
cmp ecx, 0x20
jb 0x1003ca09
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x2bf0]
mov dword [ebp - 0x44], 0x3d25e7a9
mov dword [ebp - 0x40], 0x3690c77a
mov byte [ebp - 0x3c], 0xc1
push 0x100984f0
test al, 1
jne 0x1003afbc
or eax, 1
mov dword [esi + 0x2bf0], eax
mov dword [ebp - 4], 0x18
xorps xmm0, xmm0
movlpd qword [ebp - 0x18], xmm0
mov edx, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x18]
mov byte [esi + 0x6cd], 1
nop dword [eax]
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x44]
mov byte [esi + ecx + 0x6c4], al
add ecx, 1
adc edx, 0
jne 0x1003afa8
cmp ecx, 9
jb 0x1003af90
push 0x1007c9e0
call fcn.10067577
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x6c4]
mov ecx, edi
call fcn.1005c160
sub esp, 0x18
mov ecx, edi
mov edx, esp
mov dword [ebp - 0x40], esp
lea ebx, [ecx + 1]
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0xf
mov byte [edx], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1003afe7
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.100643a0
mov dword [ebp - 4], 0x19
mov eax, dword [esi + 0x3a38]
mov dword [ebp - 0x1c], 0x4d6cf8e7
test al, 1
jne 0x1003b069
or eax, 1
mov dword [esi + 0x3a38], eax
mov byte [ebp - 4], 0x1a
xorps xmm0, xmm0
movlpd qword [ebp - 0x18], xmm0
mov edx, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x18]
mov byte [esi + 0x3044], 1
nop dword [eax]
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x1c]
mov byte [esi + ecx + 0x3040], al
add ecx, 1
adc edx, 0
jne 0x1003b058
cmp ecx, 4
jb 0x1003b040
push 0x1007ca30
call fcn.10067577
add esp, 4
mov byte [ebp - 4], 0x19
lea edi, [esi + 0x3040]
mov ecx, edi
call fcn.1005c1c0
mov ecx, edi
mov dword [ebp - 0x84], 0
mov dword [ebp - 0x80], 0xf
mov byte [ebp - 0x94], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1003b093
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x94]
call fcn.100643a0
mov byte [ebp - 4], 0x1b
movaps xmm0, xmmword [0x10087a60]
mov eax, dword [esi + 0x23fc]
mov dword [ebp - 0x28], 0x286ef1b1
mov word [ebp - 0x24], 0xfd34
movups xmmword [ebp - 0x38], xmm0
test al, 1
jne 0x1003b11a
or eax, 1
mov dword [esi + 0x23fc], eax
mov byte [ebp - 4], 0x1c
xorps xmm0, xmm0
movlpd qword [ebp - 0x18], xmm0
mov edx, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x18]
mov byte [esi + 0x3b4a], 1
mov al, byte [ebp + ecx - 0x38]
mov byte [esi + ecx + 0x3b34], al
add ecx, 1
adc edx, 0
jne 0x1003b109
cmp ecx, 0x16
jb 0x1003b0f1
push 0x1007ca80
call fcn.10067577
add esp, 4
mov byte [ebp - 4], 0x1b
lea edi, [esi + 0x3b34]
mov ecx, edi
call fcn.1005c220
mov ecx, edi
mov dword [ebp - 0x54], 0
mov dword [ebp - 0x50], 0xf
mov byte [ebp - 0x64], 0
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1003b140
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x64]
call fcn.100643a0
push 0x10096078
lea edx, [ebp - 0x64]
mov byte [ebp - 4], 0x1d
lea ecx, [ebp - 0xac]
call fcn.10064540
add esp, 4
lea ecx, [ebp - 0x94]
mov byte [ebp - 4], 0x1e
push ecx
push eax
push dword [ebp - 0x3e]
lea ecx, [ebp - 0x7c]
call fcn.10065bc0
sub esp, 0x18
mov byte [ebp - 4], 0x1f
mov ecx, esp
mov dword [ebp - 0x1c], esp
lea edx, [ebp - 0x7c]
push 0x10096498
call fcn.10064540
add esp, 4
mov byte [ebp - 4], 0x20
movaps xmm0, xmmword [0x10087f90]
mov eax, dword [esi + 0x1a14]
mov word [ebp - 0x24], 0x93bb
movups xmmword [ebp - 0x34], xmm0
test al, 1
jne 0x1003b20a
or eax, 1
mov dword [esi + 0x1a14], eax
mov byte [ebp - 4], 0x21
xorps xmm0, xmm0
movlpd qword [ebp - 0x18], xmm0
mov edx, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x18]
mov byte [esi + 0x11ae], 1
mov al, byte [ebp + ecx - 0x34]
mov byte [esi + ecx + 0x119c], al
add ecx, 1
adc edx, 0
jne 0x1003b1f9
cmp ecx, 0x12
jb 0x1003b1e1
push 0x1007cad0
call fcn.10067577
add esp, 4
mov byte [ebp - 4], 0x20
lea edi, [esi + 0x119c]
mov ecx, edi
call fcn.1005c280
sub esp, 0x18
mov ecx, edi
mov edx, esp
lea ebx, [ecx + 1]
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0xf
mov byte [edx], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1003b232
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.100643a0
mov ecx, dword [0x100997b8]
mov eax, dword [ecx]
mov byte [ebp - 4], 0x25
call dword [eax]
mov byte [ebp - 4], 0x24
mov edx, dword [ebp - 0x68]
cmp edx, 0x10
jb 0x1003b28a
mov ecx, dword [ebp - 0x7c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003b280
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003b36b
push edx
push ecx
call fcn.100674c0
add esp, 8
mov byte [ebp - 4], 0x23
mov edx, dword [ebp - 0x98]
mov dword [ebp - 0x6c], 0
mov dword [ebp - 0x68], 0xf
mov byte [ebp - 0x7c], 0
cmp edx, 0x10
jb 0x1003b2da
mov ecx, dword [ebp - 0xac]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003b2d0
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003b36b
push edx
push ecx
call fcn.100674c0
add esp, 8
mov byte [ebp - 4], 0x22
mov edx, dword [ebp - 0x50]
mov dword [ebp - 0x9c], 0
mov dword [ebp - 0x98], 0xf
mov byte [ebp - 0xac], 0
cmp edx, 0x10
jb 0x1003b329
mov ecx, dword [ebp - 0x64]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003b31f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003b36b
push edx
push ecx
call fcn.100674c0
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x80]
mov dword [ebp - 0x54], 0
mov dword [ebp - 0x50], 0xf
mov byte [ebp - 0x64], 0
cmp edx, 0x10
jb 0x1003b37b
mov ecx, dword [ebp - 0x94]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003b371
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x1003b371
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.100674c0
add esp, 8
mov ecx, dword [0x1009d9e0]
mov edx, 0x10096450
cmp dword [0x10096464], 0x10
push 0x100984f0
cmovae edx, dword [0x10096450]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x1003ca09
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x1834]
mov dword [ebp - 0x44], 0xc96f5503
mov dword [ebp - 0x40], 0xa876f5f0
mov byte [ebp - 0x3c], 0x6b
push 0x100984f0
test al, 1
jne 0x1003b42c
or eax, 1
mov dword [esi + 0x1834], eax
mov dword [ebp - 4], 0x26
xorps xmm0, xmm0
movlpd qword [ebp - 0x18], xmm0
mov edx, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x18]
mov byte [esi + 0x26fd], 1
nop dword [eax + eax]
mov al, byte [ebp + ecx - 0x44]
mov byte [ecx + esi + 0x26f4], al
add ecx, 1
adc edx, 0
jne 0x1003b418
cmp ecx, 9
jb 0x1003b400
push 0x1007c8a0
call fcn.10067577
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x26f4]
mov ecx, edi
call fcn.1005bfe0
sub esp, 0x18
mov ecx, edi
mov edx, esp
mov dword [ebp - 0x14], esp
lea ebx, [ecx + 1]
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0xf
mov byte [edx], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1003b457
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.100643a0
mov dword [ebp - 4], 0x27
mov eax, dword [esi + 0x1bac]
mov dword [ebp - 0x1c], 0xb9264a4d
test al, 1
jne 0x1003b4d9
or eax, 1
mov dword [esi + 0x1bac], eax
mov byte [ebp - 4], 0x28
xorps xmm0, xmm0
movlpd qword [ebp - 0x44], xmm0
mov edx, dword [ebp - 0x40]
mov ecx, dword [ebp - 0x44]
mov byte [esi + 0xf44], 1
nop dword [eax]
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x1c]
mov byte [ecx + esi + 0xf40], al
add ecx, 1
adc edx, 0
jne 0x1003b4c8
cmp ecx, 4
jb 0x1003b4b0
push 0x1007c8f0
call fcn.10067577
add esp, 4
mov byte [ebp - 4], 0x27
lea edi, [esi + 0xf40]
mov ecx, edi
call fcn.1005c040
mov ecx, edi
mov dword [ebp - 0x84], 0
mov dword [ebp - 0x80], 0xf
mov byte [ebp - 0x94], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1003b503
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x94]
call fcn.100643a0
mov byte [ebp - 4], 0x29
movaps xmm0, xmmword [str.D_k]
mov eax, dword [esi + 0x343c]
mov dword [ebp - 0x28], 0xdc24431b
mov word [ebp - 0x24], 0xcfbe
movups xmmword [ebp - 0x38], xmm0
test al, 1
jne 0x1003b58a
or eax, 1
mov dword [esi + 0x343c], eax
mov byte [ebp - 4], 0x2a
xorps xmm0, xmm0
movlpd qword [ebp - 0x44], xmm0
mov edx, dword [ebp - 0x40]
mov ecx, dword [ebp - 0x44]
mov byte [esi + 0x26be], 1
mov al, byte [ebp + ecx - 0x38]
mov byte [ecx + esi + 0x26a8], al
add ecx, 1
adc edx, 0
jne 0x1003b579
cmp ecx, 0x16
jb 0x1003b561
push 0x1007c940
call fcn.10067577
add esp, 4
mov byte [ebp - 4], 0x29
lea edi, [esi + 0x26a8]
mov ecx, edi
call fcn.1005c0a0
mov ecx, edi
mov dword [ebp - 0x54], 0
mov dword [ebp - 0x50], 0xf
mov byte [ebp - 0x64], 0
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1003b5b0
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x64]
call fcn.100643a0
push 0x10096268
lea edx, [ebp - 0x64]
mov byte [ebp - 4], 0x2b
lea ecx, [ebp - 0xac]
call fcn.10064540
add esp, 4
lea ecx, [ebp - 0x94]
mov byte [ebp - 4], 0x2c
push ecx
push eax
push dword [ebp - 0x14]
lea ecx, [ebp - 0x7c]
call fcn.10065bc0
sub esp, 0x18
mov byte [ebp - 4], 0x2d
mov ecx, esp
mov dword [ebp - 0x40], esp
lea edx, [ebp - 0x7c]
push 0x10096498
call fcn.10064540
add esp, 4
mov byte [ebp - 4], 0x2e
movaps xmm0, xmmword [0x10088db0]
mov eax, dword [esi + 0x2cb0]
mov word [ebp - 0x24], 0x2111
movups xmmword [ebp - 0x34], xmm0
test al, 1
jne 0x1003b67a
or eax, 1
mov dword [esi + 0x2cb0], eax
mov byte [ebp - 4], 0x2f
xorps xmm0, xmm0
movlpd qword [ebp - 0x20], xmm0
mov edx, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x20]
mov byte [esi + 0xe3e], 1
mov al, byte [ebp + ecx - 0x34]
mov byte [esi + ecx + 0xe2c], al
add ecx, 1
adc edx, 0
jne 0x1003b669
cmp ecx, 0x12
jb 0x1003b651
push 0x1007c990
call fcn.10067577
add esp, 4
mov byte [ebp - 4], 0x2e
lea edi, [esi + 0xe2c]
mov ecx, edi
call fcn.1005c100
sub esp, 0x18
mov ecx, edi
mov edx, esp
lea ebx, [ecx + 1]
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0xf
mov byte [edx], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1003b6a2
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.100643a0
mov ecx, dword [0x100997b8]
mov eax, dword [ecx]
mov byte [ebp - 4], 0x33
call dword [eax]
mov byte [ebp - 4], 0x32
mov edx, dword [ebp - 0x68]
cmp edx, 0x10
jb 0x1003b6fa
mov ecx, dword [ebp - 0x7c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003b6f0
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003b7db
push edx
push ecx
call fcn.100674c0
add esp, 8
mov byte [ebp - 4], 0x31
mov edx, dword [ebp - 0x98]
mov dword [ebp - 0x6c], 0
mov dword [ebp - 0x68], 0xf
mov byte [ebp - 0x7c], 0
cmp edx, 0x10
jb 0x1003b74a
mov ecx, dword [ebp - 0xac]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003b740
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003b7db
push edx
push ecx
call fcn.100674c0
add esp, 8
mov byte [ebp - 4], 0x30
mov edx, dword [ebp - 0x50]
mov dword [ebp - 0x9c], 0
mov dword [ebp - 0x98], 0xf
mov byte [ebp - 0xac], 0
cmp edx, 0x10
jb 0x1003b799
mov ecx, dword [ebp - 0x64]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003b78f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003b7db
push edx
push ecx
call fcn.100674c0
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x80]
mov dword [ebp - 0x54], 0
mov dword [ebp - 0x50], 0xf
mov byte [ebp - 0x64], 0
cmp edx, 0x10
jb 0x1003b7eb
mov ecx, dword [ebp - 0x94]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003b7e1
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x1003b7e1
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.100674c0
add esp, 8
mov ecx, dword [0x1009d9e0]
mov edx, 0x10096450
cmp dword [0x10096464], 0x10
push 0x100984f0
cmovae edx, dword [0x10096450]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x1003ca09
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x31f8]
mov dword [ebp - 0x44], 0xe1f7ad33
mov dword [ebp - 0x40], 0x20d04b42
mov byte [ebp - 0x3c], 0x5b
push 0x100984f0
test al, 1
jne 0x1003b89c
or eax, 1
mov dword [esi + 0x31f8], eax
mov dword [ebp - 4], 0x34
xorps xmm0, xmm0
movlpd qword [ebp - 0x18], xmm0
mov edx, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x18]
mov byte [esi + 0x19c5], 1
nop dword [eax + eax]
mov al, byte [ebp + ecx - 0x44]
mov byte [esi + ecx + 0x19bc], al
add ecx, 1
adc edx, 0
jne 0x1003b888
cmp ecx, 9
jb 0x1003b870
push 0x1007c760
call fcn.10067577
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x19bc]
mov ecx, edi
call fcn.1005be60
sub esp, 0x18
mov ecx, edi
mov edx, esp
mov dword [ebp - 0x14], esp
lea ebx, [ecx + 1]
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0xf
mov byte [edx], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1003b8c7
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.100643a0
mov dword [ebp - 4], 0x35
mov eax, dword [esi + 0x2898]
mov dword [ebp - 0x1c], 0x91beb27d
test al, 1
jne 0x1003b949
or eax, 1
mov dword [esi + 0x2898], eax
mov byte [ebp - 4], 0x36
xorps xmm0, xmm0
movlpd qword [ebp - 0x44], xmm0
mov edx, dword [ebp - 0x40]
mov ecx, dword [ebp - 0x44]
mov byte [esi + 0x3d9c], 1
nop dword [eax]
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x1c]
mov byte [esi + ecx + 0x3d98], al
add ecx, 1
adc edx, 0
jne 0x1003b938
cmp ecx, 4
jb 0x1003b920
push 0x1007c7b0
call fcn.10067577
add esp, 4
mov byte [ebp - 4], 0x35
lea edi, [esi + 0x3d98]
mov ecx, edi
call fcn.1005bec0
mov ecx, edi
mov dword [ebp - 0x84], 0
mov dword [ebp - 0x80], 0xf
mov byte [ebp - 0x94], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1003b973
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x94]
call fcn.100643a0
mov byte [ebp - 4], 0x37
movaps xmm0, xmmword [0x10087850]
mov eax, dword [esi + 0x2268]
mov dword [ebp - 0x28], 0xf4bcbb2b
mov word [ebp - 0x24], 0x710c
movups xmmword [ebp - 0x38], xmm0
test al, 1
jne 0x1003b9fa
or eax, 1
mov dword [esi + 0x2268], eax
mov byte [ebp - 4], 0x38
xorps xmm0, xmm0
movlpd qword [ebp - 0x44], xmm0
mov edx, dword [ebp - 0x40]
mov ecx, dword [ebp - 0x44]
mov byte [esi + 0x13fe], 1
mov al, byte [ebp + ecx - 0x38]
mov byte [esi + ecx + 0x13e8], al
add ecx, 1
adc edx, 0
jne 0x1003b9e9
cmp ecx, 0x16
jb 0x1003b9d1
push 0x1007c800
call fcn.10067577
add esp, 4
mov byte [ebp - 4], 0x37
lea edi, [esi + 0x13e8]
mov ecx, edi
call fcn.1005bf20
mov ecx, edi
mov dword [ebp - 0x54], 0
mov dword [ebp - 0x50], 0xf
mov byte [ebp - 0x64], 0
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1003ba20
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x64]
call fcn.100643a0
push 0x10096438
lea edx, [ebp - 0x64]
mov byte [ebp - 4], 0x39
lea ecx, [ebp - 0xac]
call fcn.10064540
add esp, 4
lea ecx, [ebp - 0x94]
mov byte [ebp - 4], 0x3a
push ecx
push eax
push dword [ebp - 0x14]
lea ecx, [ebp - 0x7c]
call fcn.10065bc0
sub esp, 0x18
mov byte [ebp - 4], 0x3b
mov ecx, esp
mov dword [ebp - 0x40], esp
lea edx, [ebp - 0x7c]
push 0x10096498
call fcn.10064540
add esp, 4
mov byte [ebp - 4], 0x3c
movaps xmm0, xmmword [0x10088140]
mov eax, dword [esi + 0x1e54]
mov word [ebp - 0x24], 0xd921
movups xmmword [ebp - 0x34], xmm0
test al, 1
jne 0x1003baea
or eax, 1
mov dword [esi + 0x1e54], eax
mov byte [ebp - 4], 0x3d
xorps xmm0, xmm0
movlpd qword [ebp - 0x20], xmm0
mov edx, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x20]
mov byte [esi + 0x407a], 1
mov al, byte [ebp + ecx - 0x34]
mov byte [esi + ecx + 0x4068], al
add ecx, 1
adc edx, 0
jne 0x1003bad9
cmp ecx, 0x12
jb 0x1003bac1
push 0x1007c850
call fcn.10067577
add esp, 4
mov byte [ebp - 4], 0x3c
lea edi, [esi + 0x4068]
mov ecx, edi
call fcn.1005bf80
sub esp, 0x18
mov ecx, edi
mov edx, esp
lea ebx, [ecx + 1]
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0xf
mov byte [edx], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1003bb12
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.100643a0
mov ecx, dword [0x100997b8]
mov eax, dword [ecx]
mov byte [ebp - 4], 0x41
call dword [eax]
mov byte [ebp - 4], 0x40
mov edx, dword [ebp - 0x68]
cmp edx, 0x10
jb 0x1003bb6a
mov ecx, dword [ebp - 0x7c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003bb60
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003bc4b
push edx
push ecx
call fcn.100674c0
add esp, 8
mov byte [ebp - 4], 0x3f
mov edx, dword [ebp - 0x98]
mov dword [ebp - 0x6c], 0
mov dword [ebp - 0x68], 0xf
mov byte [ebp - 0x7c], 0
cmp edx, 0x10
jb 0x1003bbba
mov ecx, dword [ebp - 0xac]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003bbb0
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003bc4b
push edx
push ecx
call fcn.100674c0
add esp, 8
mov byte [ebp - 4], 0x3e
mov edx, dword [ebp - 0x50]
mov dword [ebp - 0x9c], 0
mov dword [ebp - 0x98], 0xf
mov byte [ebp - 0xac], 0
cmp edx, 0x10
jb 0x1003bc09
mov ecx, dword [ebp - 0x64]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003bbff
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003bc4b
push edx
push ecx
call fcn.100674c0
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x80]
mov dword [ebp - 0x54], 0
mov dword [ebp - 0x50], 0xf
mov byte [ebp - 0x64], 0
cmp edx, 0x10
jb 0x1003bc5b
mov ecx, dword [ebp - 0x94]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003bc51
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x1003bc51
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.100674c0
add esp, 8
mov ecx, dword [0x1009d9e0]
mov edx, 0x10096450
cmp dword [0x10096464], 0x10
push 0x100984f0
cmovae edx, dword [0x10096450]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x1003ca09
mov ecx, 0x100984f0
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1003bc90
sub ecx, edx
cmp ecx, 0x20
jb 0x1003ca09
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x3fd0]
mov dword [ebp - 0x18], 0x81e95d9f
mov dword [ebp - 0x14], 0x8f786afd
push 0x100984f0
test al, 1
jne 0x1003bd1c
or eax, 1
mov dword [esi + 0x3fd0], eax
mov dword [ebp - 4], 0x42
xorps xmm0, xmm0
movlpd qword [ebp - 0x44], xmm0
mov edx, dword [ebp - 0x40]
mov ecx, dword [ebp - 0x44]
mov byte [esi + 0x1a78], 1
nop
mov al, byte [ebp + ecx - 0x18]
mov byte [esi + ecx + 0x1a70], al
add ecx, 1
adc edx, 0
jne 0x1003bd08
cmp ecx, 8
jb 0x1003bcf0
push 0x1007c620
call fcn.10067577
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x1a70]
mov ecx, edi
call fcn.1005bce0
sub esp, 0x18
mov ecx, edi
mov edx, esp
mov dword [ebp - 0x14], esp
lea ebx, [ecx + 1]
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0xf
mov byte [edx], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1003bd47
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.100643a0
mov dword [ebp - 4], 0x43
mov eax, dword [esi + 0x3400]
mov dword [ebp - 0x1c], 0xf1a042d1
test al, 1
jne 0x1003bdc9
or eax, 1
mov dword [esi + 0x3400], eax
mov byte [ebp - 4], 0x44
xorps xmm0, xmm0
movlpd qword [ebp - 0x44], xmm0
mov edx, dword [ebp - 0x40]
mov ecx, dword [ebp - 0x44]
mov byte [esi + 0xb50], 1
nop dword [eax]
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x1c]
mov byte [esi + ecx + 0xb4c], al
add ecx, 1
adc edx, 0
jne 0x1003bdb8
cmp ecx, 4
jb 0x1003bda0
push 0x1007c670
call fcn.10067577
add esp, 4
mov byte [ebp - 4], 0x43
lea edi, [esi + 0xb4c]
mov ecx, edi
call fcn.1005bd40
mov ecx, edi
mov dword [ebp - 0x84], 0
mov dword [ebp - 0x80], 0xf
mov byte [ebp - 0x94], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1003bdf3
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x94]
call fcn.100643a0
mov byte [ebp - 4], 0x45
movaps xmm0, xmmword [0x100884f0]
mov eax, dword [esi + 0x2078]
mov dword [ebp - 0x28], 0x94a24b87
mov word [ebp - 0x24], 0x45fa
movups xmmword [ebp - 0x38], xmm0
test al, 1
jne 0x1003be7a
or eax, 1
mov dword [esi + 0x2078], eax
mov byte [ebp - 4], 0x46
xorps xmm0, xmm0
movlpd qword [ebp - 0x44], xmm0
mov edx, dword [ebp - 0x40]
mov ecx, dword [ebp - 0x44]
mov byte [esi + 0x29f6], 1
mov al, byte [ebp + ecx - 0x38]
mov byte [ecx + esi + 0x29e0], al
add ecx, 1
adc edx, 0
jne 0x1003be69
cmp ecx, 0x16
jb 0x1003be51
push 0x1007c6c0
call fcn.10067577
add esp, 4
mov byte [ebp - 4], 0x45
lea edi, [esi + 0x29e0]
mov ecx, edi
call fcn.1005bda0
mov ecx, edi
mov dword [ebp - 0x54], 0
mov dword [ebp - 0x50], 0xf
mov byte [ebp - 0x64], 0
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1003bea0
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x64]
call fcn.100643a0
push 0x10096078
lea edx, [ebp - 0x64]
mov byte [ebp - 4], 0x47
lea ecx, [ebp - 0xac]
call fcn.10064540
add esp, 4
lea ecx, [ebp - 0x94]
mov byte [ebp - 4], 0x48
push ecx
push eax
push dword [ebp - 0x14]
lea ecx, [ebp - 0x7c]
call fcn.10065bc0
sub esp, 0x18
mov byte [ebp - 4], 0x49
mov ecx, esp
mov dword [ebp - 0x40], esp
lea edx, [ebp - 0x7c]
push 0x10096498
call fcn.10064540
add esp, 4
mov byte [ebp - 4], 0x4a
movaps xmm0, xmmword [0x10088d00]
mov eax, dword [esi + 0x22a0]
mov word [ebp - 0x24], 0x298d
movups xmmword [ebp - 0x34], xmm0
test al, 1
jne 0x1003bf6a
or eax, 1
mov dword [esi + 0x22a0], eax
mov byte [ebp - 4], 0x4b
xorps xmm0, xmm0
movlpd qword [ebp - 0x20], xmm0
mov edx, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x20]
mov byte [esi + 0x1f72], 1
mov al, byte [ebp + ecx - 0x34]
mov byte [ecx + esi + 0x1f60], al
add ecx, 1
adc edx, 0
jne 0x1003bf59
cmp ecx, 0x12
jb 0x1003bf41
push 0x1007c710
call fcn.10067577
add esp, 4
mov byte [ebp - 4], 0x4a
lea edi, [esi + 0x1f60]
mov ecx, edi
call fcn.1005be00
sub esp, 0x18
mov ecx, edi
mov edx, esp
lea ebx, [ecx + 1]
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0xf
mov byte [edx], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1003bf92
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.100643a0
mov ecx, dword [0x100997b8]
mov eax, dword [ecx]
mov byte [ebp - 4], 0x4f
call dword [eax]
mov byte [ebp - 4], 0x4e
mov edx, dword [ebp - 0x68]
cmp edx, 0x10
jb 0x1003bfea
mov ecx, dword [ebp - 0x7c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003bfe0
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003c0cb
push edx
push ecx
call fcn.100674c0
add esp, 8
mov byte [ebp - 4], 0x4d
mov edx, dword [ebp - 0x98]
mov dword [ebp - 0x6c], 0
mov dword [ebp - 0x68], 0xf
mov byte [ebp - 0x7c], 0
cmp edx, 0x10
jb 0x1003c03a
mov ecx, dword [ebp - 0xac]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003c030
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003c0cb
push edx
push ecx
call fcn.100674c0
add esp, 8
mov byte [ebp - 4], 0x4c
mov edx, dword [ebp - 0x50]
mov dword [ebp - 0x9c], 0
mov dword [ebp - 0x98], 0xf
mov byte [ebp - 0xac], 0
cmp edx, 0x10
jb 0x1003c089
mov ecx, dword [ebp - 0x64]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003c07f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003c0cb
push edx
push ecx
call fcn.100674c0
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x80]
mov dword [ebp - 0x54], 0
mov dword [ebp - 0x50], 0xf
mov byte [ebp - 0x64], 0
cmp edx, 0x10
jb 0x1003c0db
mov ecx, dword [ebp - 0x94]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003c0d1
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x1003c0d1
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.100674c0
add esp, 8
mov ecx, dword [0x1009d9e0]
mov edx, 0x10096450
cmp dword [0x10096464], 0x10
push 0x100984f0
cmovae edx, dword [0x10096450]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x1003ca09
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x3b24]
mov dword [ebp - 0x18], 0x3365a93f
mov dword [ebp - 0x14], 0x6d86aa0f
push 0x100984f0
test al, 1
jne 0x1003c18c
or eax, 1
mov dword [esi + 0x3b24], eax
mov dword [ebp - 4], 0x50
xorps xmm0, xmm0
movlpd qword [ebp - 0x44], xmm0
mov edx, dword [ebp - 0x40]
mov ecx, dword [ebp - 0x44]
mov byte [esi + 0x1ce0], 1
nop dword [eax]
nop dword [eax + eax]
mov al, byte [ebp + ecx - 0x18]
mov byte [ecx + esi + 0x1cd8], al
add ecx, 1
adc edx, 0
jne 0x1003c178
cmp ecx, 8
jb 0x1003c160
push 0x1007c4e0
call fcn.10067577
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x1cd8]
mov ecx, edi
call fcn.1005bb60
sub esp, 0x18
mov ecx, edi
mov edx, esp
mov dword [ebp - 0x14], esp
lea ebx, [ecx + 1]
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0xf
mov byte [edx], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1003c1b7
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.100643a0
mov dword [ebp - 4], 0x51
mov eax, dword [esi + 0x3384]
mov dword [ebp - 0x1c], 0x432cb671
test al, 1
jne 0x1003c239
or eax, 1
mov dword [esi + 0x3384], eax
mov byte [ebp - 4], 0x52
xorps xmm0, xmm0
movlpd qword [ebp - 0x44], xmm0
mov edx, dword [ebp - 0x40]
mov ecx, dword [ebp - 0x44]
mov byte [esi + 0xddc], 1
nop dword [eax]
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x1c]
mov byte [ecx + esi + 0xdd8], al
add ecx, 1
adc edx, 0
jne 0x1003c228
cmp ecx, 4
jb 0x1003c210
push 0x1007c530
call fcn.10067577
add esp, 4
mov byte [ebp - 4], 0x51
lea edi, [esi + 0xdd8]
mov ecx, edi
call fcn.1005bbc0
mov ecx, edi
mov dword [ebp - 0x84], 0
mov dword [ebp - 0x80], 0xf
mov byte [ebp - 0x94], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1003c263
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x94]
call fcn.100643a0
mov byte [ebp - 4], 0x53
movaps xmm0, xmmword [0x10087c20]
mov eax, dword [esi + 0x338]
mov dword [ebp - 0x28], 0x262ebf27
mov word [ebp - 0x24], 0x8508
movups xmmword [ebp - 0x38], xmm0
test al, 1
jne 0x1003c2ea
or eax, 1
mov dword [esi + 0x338], eax
mov byte [ebp - 4], 0x54
xorps xmm0, xmm0
movlpd qword [ebp - 0x44], xmm0
mov edx, dword [ebp - 0x40]
mov ecx, dword [ebp - 0x44]
mov byte [esi + 0x3c8a], 1
mov al, byte [ebp + ecx - 0x38]
mov byte [ecx + esi + 0x3c74], al
add ecx, 1
adc edx, 0
jne 0x1003c2d9
cmp ecx, 0x16
jb 0x1003c2c1
push 0x1007c580
call fcn.10067577
add esp, 4
mov byte [ebp - 4], 0x53
lea edi, [esi + 0x3c74]
mov ecx, edi
call fcn.1005bc20
mov ecx, edi
mov dword [ebp - 0x54], 0
mov dword [ebp - 0x50], 0xf
mov byte [ebp - 0x64], 0
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1003c310
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x64]
call fcn.100643a0
push 0x10096268
lea edx, [ebp - 0x64]
mov byte [ebp - 4], 0x55
lea ecx, [ebp - 0xac]
call fcn.10064540
add esp, 4
lea ecx, [ebp - 0x94]
mov byte [ebp - 4], 0x56
push ecx
push eax
push dword [ebp - 0x14]
lea ecx, [ebp - 0x7c]
call fcn.10065bc0
sub esp, 0x18
mov byte [ebp - 4], 0x57
mov ecx, esp
mov dword [ebp - 0x40], esp
lea edx, [ebp - 0x7c]
push 0x10096498
call fcn.10064540
add esp, 4
mov byte [ebp - 4], 0x58
movaps xmm0, xmmword [0x10087730]
mov eax, dword [esi + 0x5bc]
mov word [ebp - 0x24], 0xdd2d
movups xmmword [ebp - 0x34], xmm0
test al, 1
jne 0x1003c3da
or eax, 1
mov dword [esi + 0x5bc], eax
mov byte [ebp - 4], 0x59
xorps xmm0, xmm0
movlpd qword [ebp - 0x20], xmm0
mov edx, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x20]
mov byte [esi + 0x40c2], 1
mov al, byte [ebp + ecx - 0x34]
mov byte [ecx + esi + 0x40b0], al
add ecx, 1
adc edx, 0
jne 0x1003c3c9
cmp ecx, 0x12
jb 0x1003c3b1
push 0x1007c5d0
call fcn.10067577
add esp, 4
mov byte [ebp - 4], 0x58
lea edi, [esi + 0x40b0]
mov ecx, edi
call fcn.1005bc80
sub esp, 0x18
mov ecx, edi
mov edx, esp
lea ebx, [ecx + 1]
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0xf
mov byte [edx], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1003c402
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.100643a0
mov ecx, dword [0x100997b8]
mov eax, dword [ecx]
mov byte [ebp - 4], 0x5d
call dword [eax]
mov byte [ebp - 4], 0x5c
mov edx, dword [ebp - 0x68]
cmp edx, 0x10
jb 0x1003c45a
mov ecx, dword [ebp - 0x7c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003c450
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003c53b
push edx
push ecx
call fcn.100674c0
add esp, 8
mov byte [ebp - 4], 0x5b
mov edx, dword [ebp - 0x98]
mov dword [ebp - 0x6c], 0
mov dword [ebp - 0x68], 0xf
mov byte [ebp - 0x7c], 0
cmp edx, 0x10
jb 0x1003c4aa
mov ecx, dword [ebp - 0xac]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003c4a0
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003c53b
push edx
push ecx
call fcn.100674c0
add esp, 8
mov byte [ebp - 4], 0x5a
mov edx, dword [ebp - 0x50]
mov dword [ebp - 0x9c], 0
mov dword [ebp - 0x98], 0xf
mov byte [ebp - 0xac], 0
cmp edx, 0x10
jb 0x1003c4f9
mov ecx, dword [ebp - 0x64]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003c4ef
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003c53b
push edx
push ecx
call fcn.100674c0
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x80]
mov dword [ebp - 0x54], 0
mov dword [ebp - 0x50], 0xf
mov byte [ebp - 0x64], 0
cmp edx, 0x10
jb 0x1003c54b
mov ecx, dword [ebp - 0x94]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003c541
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x1003c541
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.100674c0
add esp, 8
mov ecx, dword [0x1009d9e0]
mov edx, 0x10096450
cmp dword [0x10096464], 0x10
push 0x100984f0
cmovae edx, dword [0x10096450]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x1003ca09
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x357c]
mov dword [ebp - 0x18], 0x614d09f3
mov dword [ebp - 0x14], 0x392ee39
push 0x100984f0
test al, 1
jne 0x1003c5fc
or eax, 1
mov dword [esi + 0x357c], eax
mov dword [ebp - 4], 0x5e
xorps xmm0, xmm0
movlpd qword [ebp - 0x44], xmm0
mov edx, dword [ebp - 0x40]
mov ecx, dword [ebp - 0x44]
mov byte [esi + 0x2d84], 1
nop dword [eax]
nop dword [eax + eax]
mov al, byte [ebp + ecx - 0x18]
mov byte [esi + ecx + 0x2d7c], al
add ecx, 1
adc edx, 0
jne 0x1003c5e8
cmp ecx, 8
jb 0x1003c5d0
push 0x1007c3a0
call fcn.10067577
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x2d7c]
mov ecx, edi
call fcn.1005b9e0
sub esp, 0x18
mov ecx, edi
mov edx, esp
mov dword [ebp - 0x14], esp
lea ebx, [ecx + 1]
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0xf
mov byte [edx], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1003c627
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.100643a0
mov dword [ebp - 4], 0x5f
mov eax, dword [esi + 0x1138]
mov dword [ebp - 0x1c], 0x110416bd
test al, 1
jne 0x1003c6a9
or eax, 1
mov dword [esi + 0x1138], eax
mov byte [ebp - 4], 0x60
xorps xmm0, xmm0
movlpd qword [ebp - 0x44], xmm0
mov edx, dword [ebp - 0x40]
mov ecx, dword [ebp - 0x44]
mov byte [esi + 0x12fc], 1
nop dword [eax]
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x1c]
mov byte [esi + ecx + 0x12f8], al
add ecx, 1
adc edx, 0
jne 0x1003c698
cmp ecx, 4
jb 0x1003c680
push 0x1007c3f0
call fcn.10067577
add esp, 4
mov byte [ebp - 4], 0x5f
lea edi, [esi + 0x12f8]
mov ecx, edi
call fcn.1005ba40
mov ecx, edi
mov dword [ebp - 0x6c], 0
mov dword [ebp - 0x68], 0xf
mov byte [ebp - 0x7c], 0
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1003c6d0
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x7c]
call fcn.100643a0
mov byte [ebp - 4], 0x61
movaps xmm0, xmmword [0x10087960]
mov eax, dword [esi + 0x33f8]
mov dword [ebp - 0x28], 0x74061feb
mov word [ebp - 0x24], 0xc13e
movups xmmword [ebp - 0x38], xmm0
test al, 1
jne 0x1003c759
or eax, 1
mov dword [esi + 0x33f8], eax
mov byte [ebp - 4], 0x62
xorps xmm0, xmm0
movlpd qword [ebp - 0x44], xmm0
mov edx, dword [ebp - 0x40]
mov ecx, dword [ebp - 0x44]
mov byte [esi + 0x29a6], 1
nop dword [eax + eax]
mov al, byte [ebp + ecx - 0x38]
mov byte [esi + ecx + 0x2990], al
add ecx, 1
adc edx, 0
jne 0x1003c748
cmp ecx, 0x16
jb 0x1003c730
push 0x1007c440
call fcn.10067577
add esp, 4
mov byte [ebp - 4], 0x61
lea edi, [esi + 0x2990]
mov ecx, edi
call fcn.1005baa0
mov ecx, edi
mov dword [ebp - 0xb4], 0
mov dword [ebp - 0xb0], 0xf
mov byte [ebp - 0xc4], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1003c786
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0xc4]
call fcn.100643a0
push 0x10096438
lea edx, [ebp - 0xc4]
mov byte [ebp - 4], 0x63
lea ecx, [ebp - 0xf4]
call fcn.10064540
add esp, 4
lea ecx, [ebp - 0x7c]
mov byte [ebp - 4], 0x64
push ecx
push eax
push dword [ebp - 0x14]
lea ecx, [ebp - 0xdc]
call fcn.10065bc0
sub esp, 0x18
mov byte [ebp - 4], 0x65
mov ecx, esp
mov dword [ebp - 0x40], esp
lea edx, [ebp - 0xdc]
push 0x10096498
call fcn.10064540
add esp, 4
mov byte [ebp - 4], 0x66
movaps xmm0, xmmword [0x100881a0]
mov eax, dword [esi + 0x2674]
mov word [ebp - 0x24], 0x7de1
movups xmmword [ebp - 0x34], xmm0
test al, 1
jne 0x1003c859
or eax, 1
mov dword [esi + 0x2674], eax
mov byte [ebp - 4], 0x67
xorps xmm0, xmm0
movlpd qword [ebp - 0x20], xmm0
mov edx, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x20]
mov byte [esi + 0x4106], 1
mov al, byte [ebp + ecx - 0x34]
mov byte [esi + ecx + 0x40f4], al
add ecx, 1
adc edx, 0
jne 0x1003c848
cmp ecx, 0x12
jb 0x1003c830
push 0x1007c490
call fcn.10067577
add esp, 4
mov byte [ebp - 4], 0x66
lea esi, [esi + 0x40f4]
mov ecx, esi
call fcn.1005bb00
sub esp, 0x18
mov ecx, esi
mov edx, esp
lea edi, [ecx + 1]
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0xf
mov byte [edx], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1003c881
sub ecx, edi
push ecx
push esi
mov ecx, edx
call fcn.100643a0
mov ecx, dword [0x100997b8]
mov eax, dword [ecx]
mov byte [ebp - 4], 0x6b
call dword [eax]
mov byte [ebp - 4], 0x6a
mov edx, dword [ebp - 0xc8]
cmp edx, 0x10
jb 0x1003c8df
mov ecx, dword [ebp - 0xdc]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003c8d5
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003c9d5
push edx
push ecx
call fcn.100674c0
add esp, 8
mov byte [ebp - 4], 0x69
mov edx, dword [ebp - 0xe0]
mov dword [ebp - 0xcc], 0
mov dword [ebp - 0xc8], 0xf
mov byte [ebp - 0xdc], 0
cmp edx, 0x10
jb 0x1003c938
mov ecx, dword [ebp - 0xf4]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003c92e
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003c9d5
push edx
push ecx
call fcn.100674c0
add esp, 8
mov byte [ebp - 4], 0x68
mov edx, dword [ebp - 0xb0]
mov dword [ebp - 0xe4], 0
mov dword [ebp - 0xe0], 0xf
mov byte [ebp - 0xf4], 0
cmp edx, 0x10
jb 0x1003c98d
mov ecx, dword [ebp - 0xc4]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003c983
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003c9d5
push edx
push ecx
call fcn.100674c0
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x68]
mov dword [ebp - 0xb4], 0
mov dword [ebp - 0xb0], 0xf
mov byte [ebp - 0xc4], 0
cmp edx, 0x10
jb 0x1003c9e5
mov ecx, dword [ebp - 0x7c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003c9db
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x1003c9db
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.100674c0
add esp, 8
mov ecx, dword [0x1009d9e0]
mov edx, 0x10096450
cmp dword [0x10096464], 0x10
push 0x100984f0
cmovae edx, dword [0x10096450]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.10066b99
mov esp, ebp
pop ebp
ret