Function at 0x10029ad0
Capabilities:
Parse pe header

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x10061944
mov eax, dword fs:[0]
push eax
sub esp, 0xe4
mov eax, dword [0x1008600c]
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 [0x10086f0c]
push 0x1008d770
push 0
push 0
mov esi, dword [eax + ecx*4]
mov dword [ebp - 0x30], 0x470ab431
mov eax, dword [esi + 0x2a10]
test al, 1
jne 0x10029b7c
or eax, 1
mov dword [esi + 0x2a10], eax
mov dword [ebp - 4], 0
xorps xmm0, xmm0
movlpd qword [ebp - 0x28], xmm0
mov edx, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x28]
mov byte [esi + 0x291c], 1
nop dword [eax]
mov al, byte [ebp + ecx - 0x30]
mov byte [esi + ecx + 0x2918], al
add ecx, 1
adc edx, 0
jne 0x10029b68
cmp ecx, 4
jb 0x10029b50
push 0x1006da30
call fcn.1005d2c7
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x2918]
mov ecx, edi
call fcn.10056b40
mov ecx, edi
mov dword [ebp - 0x68], 0
mov dword [ebp - 0x64], 0xf
mov byte [ebp - 0x78], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10029ba0
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x78]
call fcn.1005a340
mov dword [ebp - 4], 1
mov eax, dword [esi + 0x1ec0]
mov dword [ebp - 0x20], 0x2e47be38
mov dword [ebp - 0x1c], 0x76be09ae
mov dword [ebp - 0x18], 0x2208bd67
mov word [ebp - 0x14], 0x7fbc
test al, 1
jne 0x10029c2a
or eax, 1
mov dword [esi + 0x1ec0], eax
mov byte [ebp - 4], 2
xorps xmm0, xmm0
movlpd qword [ebp - 0x28], xmm0
mov edx, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x28]
mov byte [esi + 0x32a6], 1
mov al, byte [ebp + ecx - 0x20]
mov byte [esi + ecx + 0x3298], al
add ecx, 1
adc edx, 0
jne 0x10029c19
cmp ecx, 0xe
jb 0x10029c01
push 0x1006da80
call fcn.1005d2c7
add esp, 4
mov byte [ebp - 4], 1
lea edi, [esi + 0x3298]
mov ecx, edi
call fcn.10056ba0
mov ecx, edi
mov dword [ebp - 0x50], 0
mov dword [ebp - 0x4c], 0xf
mov byte [ebp - 0x60], 0
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10029c50
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x60]
call fcn.1005a340
push 0x10086150
lea edx, [ebp - 0x60]
mov byte [ebp - 4], 3
lea ecx, [ebp - 0xa8]
call fcn.1005a4e0
add esp, 4
lea ecx, [ebp - 0x78]
mov byte [ebp - 4], 4
push ecx
push eax
push dword [ebp - 0x2f]
lea ecx, [ebp - 0x90]
call fcn.1005b910
sub esp, 0x18
mov byte [ebp - 4], 5
mov ecx, esp
mov dword [ebp - 0x30], esp
lea edx, [ebp - 0x90]
push 0x10086570
call fcn.1005a4e0
add esp, 4
mov byte [ebp - 4], 6
mov eax, dword [esi + 0x256c]
mov dword [ebp - 0x48], 0x375ea961
mov dword [ebp - 0x44], 0x2ae910ec
mov dword [ebp - 0x40], 0x2a58bc39
mov byte [ebp - 0x3c], 0x81
test al, 1
jne 0x10029d29
or eax, 1
mov dword [esi + 0x256c], eax
mov byte [ebp - 4], 7
xorps xmm0, xmm0
movlpd qword [ebp - 0x28], xmm0
mov edx, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x28]
mov byte [esi + 0x849], 1
nop dword [eax]
mov al, byte [ebp + ecx - 0x48]
mov byte [esi + ecx + 0x83c], al
add ecx, 1
adc edx, 0
jne 0x10029d18
cmp ecx, 0xd
jb 0x10029d00
push 0x1006dad0
call fcn.1005d2c7
add esp, 4
mov byte [ebp - 4], 6
lea edi, [esi + 0x83c]
mov ecx, edi
call fcn.10056c00
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 0x10029d51
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.1005a340
mov ecx, dword [0x100887fc]
mov eax, dword [ecx]
mov byte [ebp - 4], 5
call dword [eax + 4]
mov byte [ebp - 4], 4
mov edx, dword [ebp - 0x7c]
cmp edx, 0x10
jb 0x10029dad
mov ecx, dword [ebp - 0x90]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10029da3
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10029e8e
push edx
push ecx
call fcn.1005d210
add esp, 8
mov byte [ebp - 4], 3
mov edx, dword [ebp - 0x94]
mov dword [ebp - 0x80], 0
mov dword [ebp - 0x7c], 0xf
mov byte [ebp - 0x90], 0
cmp edx, 0x10
jb 0x10029e00
mov ecx, dword [ebp - 0xa8]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10029df6
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10029e8e
push edx
push ecx
call fcn.1005d210
add esp, 8
mov byte [ebp - 4], 1
mov edx, dword [ebp - 0x4c]
mov dword [ebp - 0x98], 0
mov dword [ebp - 0x94], 0xf
mov byte [ebp - 0xa8], 0
cmp edx, 0x10
jb 0x10029e4f
mov ecx, dword [ebp - 0x60]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10029e45
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10029e8e
push edx
push ecx
call fcn.1005d210
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x64]
mov dword [ebp - 0x50], 0
mov dword [ebp - 0x4c], 0xf
mov byte [ebp - 0x60], 0
cmp edx, 0x10
jb 0x10029e9e
mov ecx, dword [ebp - 0x78]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10029e94
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x10029e94
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.1005d210
add esp, 8
mov ecx, dword [0x1008c9e4]
mov edx, 0x10086528
cmp dword [0x1008653c], 0x10
push 0x1008d770
cmovae edx, dword [0x10086528]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x1002c1c9
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x38c4]
mov dword [ebp - 0x30], 0x6bc48841
push 0x1008d770
push 0
push 0
test al, 1
jne 0x10029f4c
or eax, 1
mov dword [esi + 0x38c4], eax
mov dword [ebp - 4], 8
xorps xmm0, xmm0
movlpd qword [ebp - 0x28], xmm0
mov edx, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x28]
mov byte [esi + 0x35d0], 1
nop dword [eax]
nop dword [eax + eax]
mov al, byte [ebp + ecx - 0x30]
mov byte [esi + ecx + 0x35cc], al
add ecx, 1
adc edx, 0
jne 0x10029f38
cmp ecx, 4
jb 0x10029f20
push 0x1006d940
call fcn.1005d2c7
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x35cc]
mov ecx, edi
call fcn.10056a20
mov ecx, edi
mov dword [ebp - 0x80], 0
mov dword [ebp - 0x7c], 0xf
mov byte [ebp - 0x90], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10029f73
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x90]
call fcn.1005a340
mov dword [ebp - 4], 9
mov eax, dword [esi + 0x1730]
mov dword [ebp - 0x20], 0x2898248
mov dword [ebp - 0x1c], 0x9a641dca
mov dword [ebp - 0x18], 0xec68117
mov word [ebp - 0x14], 0x6bd8
test al, 1
jne 0x1002a009
or eax, 1
mov dword [esi + 0x1730], eax
mov byte [ebp - 4], 0xa
xorps xmm0, xmm0
movlpd qword [ebp - 0x28], xmm0
mov edx, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x28]
mov byte [esi + 0x2f96], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x20]
mov byte [ecx + esi + 0x2f88], al
add ecx, 1
adc edx, 0
jne 0x10029ff8
cmp ecx, 0xe
jb 0x10029fe0
push 0x1006d990
call fcn.1005d2c7
add esp, 4
mov byte [ebp - 4], 9
lea edi, [esi + 0x2f88]
mov ecx, edi
call fcn.10056a80
mov ecx, edi
mov dword [ebp - 0x50], 0
mov dword [ebp - 0x4c], 0xf
mov byte [ebp - 0x60], 0
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1002a030
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x60]
call fcn.1005a340
push 0x10086340
lea edx, [ebp - 0x60]
mov byte [ebp - 4], 0xb
lea ecx, [ebp - 0xa8]
call fcn.1005a4e0
add esp, 4
lea ecx, [ebp - 0x90]
mov byte [ebp - 4], 0xc
push ecx
push eax
push dword [ebp - 0x3f]
lea ecx, [ebp - 0x78]
call fcn.1005b910
sub esp, 0x18
mov byte [ebp - 4], 0xd
mov ecx, esp
mov dword [ebp - 0x40], esp
lea edx, [ebp - 0x78]
push 0x10086570
call fcn.1005a4e0
add esp, 4
mov byte [ebp - 4], 0xe
mov eax, dword [esi + 0x2454]
mov dword [ebp - 0x38], 0x1b909511
mov dword [ebp - 0x34], 0xc6330488
mov dword [ebp - 0x30], 0x6968049
mov byte [ebp - 0x2c], 0xe5
test al, 1
jne 0x1002a109
or eax, 1
mov dword [esi + 0x2454], eax
mov byte [ebp - 4], 0xf
xorps xmm0, xmm0
movlpd qword [ebp - 0x28], xmm0
mov edx, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x28]
mov byte [esi + 0x227d], 1
nop dword [eax]
mov al, byte [ebp + ecx - 0x38]
mov byte [ecx + esi + 0x2270], al
add ecx, 1
adc edx, 0
jne 0x1002a0f8
cmp ecx, 0xd
jb 0x1002a0e0
push 0x1006d9e0
call fcn.1005d2c7
add esp, 4
mov byte [ebp - 4], 0xe
lea edi, [esi + 0x2270]
mov ecx, edi
call fcn.10056ae0
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 0x1002a131
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.1005a340
mov ecx, dword [0x100887fc]
mov eax, dword [ecx]
mov byte [ebp - 4], 0xd
call dword [eax + 4]
mov byte [ebp - 4], 0xc
mov edx, dword [ebp - 0x64]
cmp edx, 0x10
jb 0x1002a18a
mov ecx, dword [ebp - 0x78]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1002a180
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1002a26b
push edx
push ecx
call fcn.1005d210
add esp, 8
mov byte [ebp - 4], 0xb
mov edx, dword [ebp - 0x94]
mov dword [ebp - 0x68], 0
mov dword [ebp - 0x64], 0xf
mov byte [ebp - 0x78], 0
cmp edx, 0x10
jb 0x1002a1da
mov ecx, dword [ebp - 0xa8]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1002a1d0
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1002a26b
push edx
push ecx
call fcn.1005d210
add esp, 8
mov byte [ebp - 4], 9
mov edx, dword [ebp - 0x4c]
mov dword [ebp - 0x98], 0
mov dword [ebp - 0x94], 0xf
mov byte [ebp - 0xa8], 0
cmp edx, 0x10
jb 0x1002a229
mov ecx, dword [ebp - 0x60]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1002a21f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1002a26b
push edx
push ecx
call fcn.1005d210
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x7c]
mov dword [ebp - 0x50], 0
mov dword [ebp - 0x4c], 0xf
mov byte [ebp - 0x60], 0
cmp edx, 0x10
jb 0x1002a27b
mov ecx, dword [ebp - 0x90]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1002a271
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x1002a271
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.1005d210
add esp, 8
mov ecx, dword [0x1008c9e4]
mov edx, 0x10086528
cmp dword [0x1008653c], 0x10
push 0x1008d770
cmovae edx, dword [0x10086528]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x1002c1c9
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x260c]
mov dword [ebp - 0x30], 0x178a8079
push 0x1008d770
push 0
push 0
test al, 1
jne 0x1002a31d
or eax, 1
mov dword [esi + 0x260c], eax
mov dword [ebp - 4], 0x10
xorps xmm0, xmm0
movlpd qword [ebp - 0x28], xmm0
mov edx, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x28]
mov byte [esi + 0x1f54], 1
mov al, byte [ebp + ecx - 0x30]
mov byte [ecx + esi + 0x1f50], al
add ecx, 1
adc edx, 0
jne 0x1002a309
cmp ecx, 4
jb 0x1002a2f1
push 0x1006d850
call fcn.1005d2c7
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x1f50]
mov ecx, edi
call fcn.10056900
mov ecx, edi
mov dword [ebp - 0x80], 0
mov dword [ebp - 0x7c], 0xf
mov byte [ebp - 0x90], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1002a344
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x90]
call fcn.1005a340
mov dword [ebp - 4], 0x11
mov eax, dword [esi + 0x2080]
mov dword [ebp - 0x20], 0x7ec78a70
mov dword [ebp - 0x1c], 0x14885bbe
mov dword [ebp - 0x18], 0x7288892f
mov word [ebp - 0x14], 0x2dac
test al, 1
jne 0x1002a3d9
or eax, 1
mov dword [esi + 0x2080], eax
mov byte [ebp - 4], 0x12
xorps xmm0, xmm0
movlpd qword [ebp - 0x28], xmm0
mov edx, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x28]
mov byte [esi + 0x26e], 1
nop dword [eax + eax]
mov al, byte [ebp + ecx - 0x20]
mov byte [ecx + esi + 0x260], al
add ecx, 1
adc edx, 0
jne 0x1002a3c8
cmp ecx, 0xe
jb 0x1002a3b0
push 0x1006d8a0
call fcn.1005d2c7
add esp, 4
mov byte [ebp - 4], 0x11
lea edi, [esi + 0x260]
mov ecx, edi
call fcn.10056960
mov ecx, edi
mov dword [ebp - 0x50], 0
mov dword [ebp - 0x4c], 0xf
mov byte [ebp - 0x60], 0
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1002a400
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x60]
call fcn.1005a340
push 0x10086510
lea edx, [ebp - 0x60]
mov byte [ebp - 4], 0x13
lea ecx, [ebp - 0xa8]
call fcn.1005a4e0
add esp, 4
lea ecx, [ebp - 0x90]
mov byte [ebp - 4], 0x14
push ecx
push eax
push dword [ebp - 0x3f]
lea ecx, [ebp - 0x78]
call fcn.1005b910
sub esp, 0x18
mov byte [ebp - 4], 0x15
mov ecx, esp
mov dword [ebp - 0x40], esp
lea edx, [ebp - 0x78]
push 0x10086570
call fcn.1005a4e0
add esp, 4
mov byte [ebp - 4], 0x16
mov eax, dword [esi + 0x1a08]
mov dword [ebp - 0x38], 0x67de9d29
mov dword [ebp - 0x34], 0x48df42fc
mov dword [ebp - 0x30], 0x7ad88871
mov byte [ebp - 0x2c], 0x91
test al, 1
jne 0x1002a4d9
or eax, 1
mov dword [esi + 0x1a08], eax
mov byte [ebp - 4], 0x17
xorps xmm0, xmm0
movlpd qword [ebp - 0x28], xmm0
mov edx, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x28]
mov byte [esi + 0x515], 1
nop dword [eax]
mov al, byte [ebp + ecx - 0x38]
mov byte [ecx + esi + 0x508], al
add ecx, 1
adc edx, 0
jne 0x1002a4c8
cmp ecx, 0xd
jb 0x1002a4b0
push 0x1006d8f0
call fcn.1005d2c7
add esp, 4
mov byte [ebp - 4], 0x16
lea edi, [esi + 0x508]
mov ecx, edi
call fcn.100569c0
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 0x1002a501
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.1005a340
mov ecx, dword [0x100887fc]
mov eax, dword [ecx]
mov byte [ebp - 4], 0x15
call dword [eax + 4]
mov byte [ebp - 4], 0x14
mov edx, dword [ebp - 0x64]
cmp edx, 0x10
jb 0x1002a55a
mov ecx, dword [ebp - 0x78]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1002a550
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1002a63b
push edx
push ecx
call fcn.1005d210
add esp, 8
mov byte [ebp - 4], 0x13
mov edx, dword [ebp - 0x94]
mov dword [ebp - 0x68], 0
mov dword [ebp - 0x64], 0xf
mov byte [ebp - 0x78], 0
cmp edx, 0x10
jb 0x1002a5aa
mov ecx, dword [ebp - 0xa8]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1002a5a0
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1002a63b
push edx
push ecx
call fcn.1005d210
add esp, 8
mov byte [ebp - 4], 0x11
mov edx, dword [ebp - 0x4c]
mov dword [ebp - 0x98], 0
mov dword [ebp - 0x94], 0xf
mov byte [ebp - 0xa8], 0
cmp edx, 0x10
jb 0x1002a5f9
mov ecx, dword [ebp - 0x60]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1002a5ef
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1002a63b
push edx
push ecx
call fcn.1005d210
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x7c]
mov dword [ebp - 0x50], 0
mov dword [ebp - 0x4c], 0xf
mov byte [ebp - 0x60], 0
cmp edx, 0x10
jb 0x1002a64b
mov ecx, dword [ebp - 0x90]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1002a641
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x1002a641
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.1005d210
add esp, 8
mov ecx, dword [0x1008c9e4]
mov edx, 0x10086528
cmp dword [0x1008653c], 0x10
push 0x1008d770
cmovae edx, dword [0x10086528]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x1002c1c9
mov ecx, 0x1008d770
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1002a680
sub ecx, edx
cmp ecx, 0x20
jb 0x1002c1c9
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x109c]
mov dword [ebp - 0x44], 0x53adb925
mov dword [ebp - 0x40], 0x6c100f38
mov byte [ebp - 0x3c], 0x4d
push 0x1008d770
test al, 1
jne 0x1002a71c
or eax, 1
mov dword [esi + 0x109c], eax
mov dword [ebp - 4], 0x18
xorps xmm0, xmm0
movlpd qword [ebp - 0x28], xmm0
mov edx, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x28]
mov byte [esi + 0x1825], 1
nop dword [eax]
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x44]
mov byte [ecx + esi + 0x181c], al
add ecx, 1
adc edx, 0
jne 0x1002a708
cmp ecx, 9
jb 0x1002a6f0
push 0x1006d710
call fcn.1005d2c7
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x181c]
mov ecx, edi
call fcn.10056780
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 0x1002a747
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.1005a340
mov dword [ebp - 4], 0x19
mov eax, dword [esi + 0x31ec]
mov dword [ebp - 0x30], 0x23e4a66b
test al, 1
jne 0x1002a7c9
or eax, 1
mov dword [esi + 0x31ec], eax
mov byte [ebp - 4], 0x1a
xorps xmm0, xmm0
movlpd qword [ebp - 0x28], xmm0
mov edx, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x28]
mov byte [esi + 0x824], 1
nop dword [eax]
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x30]
mov byte [ecx + esi + 0x820], al
add ecx, 1
adc edx, 0
jne 0x1002a7b8
cmp ecx, 4
jb 0x1002a7a0
push 0x1006d760
call fcn.1005d2c7
add esp, 4
mov byte [ebp - 4], 0x19
lea edi, [esi + 0x820]
mov ecx, edi
call fcn.100567e0
mov ecx, edi
mov dword [ebp - 0x80], 0
mov dword [ebp - 0x7c], 0xf
mov byte [ebp - 0x90], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1002a7f0
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x90]
call fcn.1005a340
mov byte [ebp - 4], 0x1b
mov eax, dword [esi + 0x170c]
mov dword [ebp - 0x20], 0x4aa9ac62
mov dword [ebp - 0x1c], 0x6c0c4364
mov dword [ebp - 0x18], 0x46e6af3d
mov word [ebp - 0x14], 0x3576
test al, 1
jne 0x1002a87a
or eax, 1
mov dword [esi + 0x170c], eax
mov byte [ebp - 4], 0x1c
xorps xmm0, xmm0
movlpd qword [ebp - 0x28], xmm0
mov edx, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x28]
mov byte [esi + 0x14de], 1
mov al, byte [ebp + ecx - 0x20]
mov byte [ecx + esi + 0x14d0], al
add ecx, 1
adc edx, 0
jne 0x1002a869
cmp ecx, 0xe
jb 0x1002a851
push 0x1006d7b0
call fcn.1005d2c7
add esp, 4
mov byte [ebp - 4], 0x1b
lea edi, [esi + 0x14d0]
mov ecx, edi
call fcn.10056840
mov ecx, edi
mov dword [ebp - 0x50], 0
mov dword [ebp - 0x4c], 0xf
mov byte [ebp - 0x60], 0
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1002a8a0
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x60]
call fcn.1005a340
push 0x10086150
lea edx, [ebp - 0x60]
mov byte [ebp - 4], 0x1d
lea ecx, [ebp - 0xa8]
call fcn.1005a4e0
add esp, 4
lea ecx, [ebp - 0x90]
mov byte [ebp - 4], 0x1e
push ecx
push eax
push dword [ebp - 0x3f]
lea ecx, [ebp - 0x78]
call fcn.1005b910
sub esp, 0x18
mov byte [ebp - 4], 0x1f
mov ecx, esp
mov dword [ebp - 0x30], esp
lea edx, [ebp - 0x78]
push 0x10086570
call fcn.1005a4e0
add esp, 4
mov byte [ebp - 4], 0x20
mov eax, dword [esi + 0xebc]
mov dword [ebp - 0x20], 0x53b0bb3b
mov dword [ebp - 0x1c], 0x305b5a26
mov dword [ebp - 0x18], 0x4eb6ae63
mov byte [ebp - 0x14], 0x4b
test al, 1
jne 0x1002a979
or eax, 1
mov dword [esi + 0xebc], eax
mov byte [ebp - 4], 0x21
xorps xmm0, xmm0
movlpd qword [ebp - 0x28], xmm0
mov edx, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x28]
mov byte [esi + 0x239d], 1
nop dword [eax]
mov al, byte [ebp + ecx - 0x20]
mov byte [ecx + esi + 0x2390], al
add ecx, 1
adc edx, 0
jne 0x1002a968
cmp ecx, 0xd
jb 0x1002a950
push 0x1006d800
call fcn.1005d2c7
add esp, 4
mov byte [ebp - 4], 0x20
lea edi, [esi + 0x2390]
mov ecx, edi
call fcn.100568a0
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 0x1002a9a1
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.1005a340
mov ecx, dword [0x100887fc]
mov eax, dword [ecx]
mov byte [ebp - 4], 0x25
call dword [eax]
mov byte [ebp - 4], 0x24
mov edx, dword [ebp - 0x64]
cmp edx, 0x10
jb 0x1002a9f9
mov ecx, dword [ebp - 0x78]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1002a9ef
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1002aada
push edx
push ecx
call fcn.1005d210
add esp, 8
mov byte [ebp - 4], 0x23
mov edx, dword [ebp - 0x94]
mov dword [ebp - 0x68], 0
mov dword [ebp - 0x64], 0xf
mov byte [ebp - 0x78], 0
cmp edx, 0x10
jb 0x1002aa49
mov ecx, dword [ebp - 0xa8]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1002aa3f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1002aada
push edx
push ecx
call fcn.1005d210
add esp, 8
mov byte [ebp - 4], 0x22
mov edx, dword [ebp - 0x4c]
mov dword [ebp - 0x98], 0
mov dword [ebp - 0x94], 0xf
mov byte [ebp - 0xa8], 0
cmp edx, 0x10
jb 0x1002aa98
mov ecx, dword [ebp - 0x60]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1002aa8e
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1002aada
push edx
push ecx
call fcn.1005d210
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x7c]
mov dword [ebp - 0x50], 0
mov dword [ebp - 0x4c], 0xf
mov byte [ebp - 0x60], 0
cmp edx, 0x10
jb 0x1002aaea
mov ecx, dword [ebp - 0x90]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1002aae0
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x1002aae0
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.1005d210
add esp, 8
mov ecx, dword [0x1008c9e4]
mov edx, 0x10086528
cmp dword [0x1008653c], 0x10
push 0x1008d770
cmovae edx, dword [0x10086528]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x1002c1c9
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x17f4]
mov dword [ebp - 0x44], 0xdd4d5369
mov dword [ebp - 0x40], 0xe702da2
mov byte [ebp - 0x3c], 1
push 0x1008d770
test al, 1
jne 0x1002ab9c
or eax, 1
mov dword [esi + 0x17f4], eax
mov dword [ebp - 4], 0x26
xorps xmm0, xmm0
movlpd qword [ebp - 0x28], xmm0
mov edx, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x28]
mov byte [esi + 0x2cb9], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x44]
mov byte [ecx + esi + 0x2cb0], al
add ecx, 1
adc edx, 0
jne 0x1002ab88
cmp ecx, 9
jb 0x1002ab70
push 0x1006d5d0
call fcn.1005d2c7
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x2cb0]
mov ecx, edi
call fcn.10056600
sub esp, 0x18
mov ecx, edi
mov edx, esp
mov dword [ebp - 0x24], 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 0x1002abc7
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.1005a340
mov dword [ebp - 4], 0x27
mov eax, dword [esi + 0x1090]
mov dword [ebp - 0x30], 0xad044c27
test al, 1
jne 0x1002ac49
or eax, 1
mov dword [esi + 0x1090], 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 + 0x2fe4], 1
nop dword [eax]
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x30]
mov byte [esi + ecx + 0x2fe0], al
add ecx, 1
adc edx, 0
jne 0x1002ac38
cmp ecx, 4
jb 0x1002ac20
push 0x1006d620
call fcn.1005d2c7
add esp, 4
mov byte [ebp - 4], 0x27
lea edi, [esi + 0x2fe0]
mov ecx, edi
call fcn.10056660
mov ecx, edi
mov dword [ebp - 0x80], 0
mov dword [ebp - 0x7c], 0xf
mov byte [ebp - 0x90], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1002ac70
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x90]
call fcn.1005a340
mov byte [ebp - 4], 0x29
mov eax, dword [esi + 0x2d30]
mov dword [ebp - 0x20], 0xc449462e
mov dword [ebp - 0x1c], 0xe6c61fe
mov dword [ebp - 0x18], 0xc8064571
mov word [ebp - 0x14], 0x17ec
test al, 1
jne 0x1002acfa
or eax, 1
mov dword [esi + 0x2d30], 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 + 0x1a1a], 1
mov al, byte [ebp + ecx - 0x20]
mov byte [esi + ecx + 0x1a0c], al
add ecx, 1
adc edx, 0
jne 0x1002ace9
cmp ecx, 0xe
jb 0x1002acd1
push 0x1006d670
call fcn.1005d2c7
add esp, 4
mov byte [ebp - 4], 0x29
lea edi, [esi + 0x1a0c]
mov ecx, edi
call fcn.100566c0
mov ecx, edi
mov dword [ebp - 0x50], 0
mov dword [ebp - 0x4c], 0xf
mov byte [ebp - 0x60], 0
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1002ad20
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x60]
call fcn.1005a340
push 0x10086340
lea edx, [ebp - 0x60]
mov byte [ebp - 4], 0x2b
lea ecx, [ebp - 0xa8]
call fcn.1005a4e0
add esp, 4
lea ecx, [ebp - 0x90]
mov byte [ebp - 4], 0x2c
push ecx
push eax
push dword [ebp - 0x24]
lea ecx, [ebp - 0x78]
call fcn.1005b910
sub esp, 0x18
mov byte [ebp - 4], 0x2d
mov ecx, esp
mov dword [ebp - 0x40], esp
lea edx, [ebp - 0x78]
push 0x10086570
call fcn.1005a4e0
add esp, 4
mov byte [ebp - 4], 0x2e
mov eax, dword [esi + 0x15dc]
mov dword [ebp - 0x20], 0xdd505177
mov dword [ebp - 0x1c], 0x523b78bc
mov dword [ebp - 0x18], 0xc056442f
mov byte [ebp - 0x14], 0xd1
test al, 1
jne 0x1002adf9
or eax, 1
mov dword [esi + 0x15dc], eax
mov byte [ebp - 4], 0x2f
xorps xmm0, xmm0
movlpd qword [ebp - 0x34], xmm0
mov edx, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x34]
mov byte [esi + 0x5f9], 1
nop dword [eax]
mov al, byte [ebp + ecx - 0x20]
mov byte [esi + ecx + 0x5ec], al
add ecx, 1
adc edx, 0
jne 0x1002ade8
cmp ecx, 0xd
jb 0x1002add0
push 0x1006d6c0
call fcn.1005d2c7
add esp, 4
mov byte [ebp - 4], 0x2e
lea edi, [esi + 0x5ec]
mov ecx, edi
call fcn.10056720
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 0x1002ae21
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.1005a340
mov ecx, dword [0x100887fc]
mov eax, dword [ecx]
mov byte [ebp - 4], 0x33
call dword [eax]
mov byte [ebp - 4], 0x32
mov edx, dword [ebp - 0x64]
cmp edx, 0x10
jb 0x1002ae79
mov ecx, dword [ebp - 0x78]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1002ae6f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1002af5a
push edx
push ecx
call fcn.1005d210
add esp, 8
mov byte [ebp - 4], 0x31
mov edx, dword [ebp - 0x94]
mov dword [ebp - 0x68], 0
mov dword [ebp - 0x64], 0xf
mov byte [ebp - 0x78], 0
cmp edx, 0x10
jb 0x1002aec9
mov ecx, dword [ebp - 0xa8]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1002aebf
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1002af5a
push edx
push ecx
call fcn.1005d210
add esp, 8
mov byte [ebp - 4], 0x30
mov edx, dword [ebp - 0x4c]
mov dword [ebp - 0x98], 0
mov dword [ebp - 0x94], 0xf
mov byte [ebp - 0xa8], 0
cmp edx, 0x10
jb 0x1002af18
mov ecx, dword [ebp - 0x60]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1002af0e
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1002af5a
push edx
push ecx
call fcn.1005d210
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x7c]
mov dword [ebp - 0x50], 0
mov dword [ebp - 0x4c], 0xf
mov byte [ebp - 0x60], 0
cmp edx, 0x10
jb 0x1002af6a
mov ecx, dword [ebp - 0x90]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1002af60
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x1002af60
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.1005d210
add esp, 8
mov ecx, dword [0x1008c9e4]
mov edx, 0x10086528
cmp dword [0x1008653c], 0x10
push 0x1008d770
cmovae edx, dword [0x10086528]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x1002c1c9
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x25c]
mov dword [ebp - 0x44], 0x9359fd35
mov dword [ebp - 0x40], 0xae52effe
mov byte [ebp - 0x3c], 0x5d
push 0x1008d770
test al, 1
jne 0x1002b01c
or eax, 1
mov dword [esi + 0x25c], eax
mov dword [ebp - 4], 0x34
xorps xmm0, xmm0
movlpd qword [ebp - 0x28], xmm0
mov edx, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x28]
mov byte [esi + 0x21d9], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x44]
mov byte [esi + ecx + 0x21d0], al
add ecx, 1
adc edx, 0
jne 0x1002b008
cmp ecx, 9
jb 0x1002aff0
push 0x1006d490
call fcn.1005d2c7
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x21d0]
mov ecx, edi
call fcn.10056480
sub esp, 0x18
mov ecx, edi
mov edx, esp
mov dword [ebp - 0x24], 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 0x1002b047
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.1005a340
mov dword [ebp - 4], 0x35
mov eax, dword [esi + 0x2404]
mov dword [ebp - 0x30], 0xe310e27b
test al, 1
jne 0x1002b0c9
or eax, 1
mov dword [esi + 0x2404], 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 + 0x6c4], 1
nop dword [eax]
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x30]
mov byte [esi + ecx + 0x6c0], al
add ecx, 1
adc edx, 0
jne 0x1002b0b8
cmp ecx, 4
jb 0x1002b0a0
push 0x1006d4e0
call fcn.1005d2c7
add esp, 4
mov byte [ebp - 4], 0x35
lea edi, [esi + 0x6c0]
mov ecx, edi
call fcn.100564e0
mov ecx, edi
mov dword [ebp - 0x80], 0
mov dword [ebp - 0x7c], 0xf
mov byte [ebp - 0x90], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1002b0f0
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x90]
call fcn.1005a340
mov byte [ebp - 4], 0x37
mov eax, dword [esi + 0x27c0]
mov dword [ebp - 0x20], 0x8a5de872
mov dword [ebp - 0x1c], 0xae4ea3a2
mov dword [ebp - 0x18], 0x8612eb2d
mov word [ebp - 0x14], 0xd5b0
test al, 1
jne 0x1002b17a
or eax, 1
mov dword [esi + 0x27c0], 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 + 0x22aa], 1
mov al, byte [ebp + ecx - 0x20]
mov byte [esi + ecx + 0x229c], al
add ecx, 1
adc edx, 0
jne 0x1002b169
cmp ecx, 0xe
jb 0x1002b151
push 0x1006d530
call fcn.1005d2c7
add esp, 4
mov byte [ebp - 4], 0x37
lea edi, [esi + 0x229c]
mov ecx, edi
call fcn.10056540
mov ecx, edi
mov dword [ebp - 0x50], 0
mov dword [ebp - 0x4c], 0xf
mov byte [ebp - 0x60], 0
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1002b1a0
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x60]
call fcn.1005a340
push 0x10086510
lea edx, [ebp - 0x60]
mov byte [ebp - 4], 0x39
lea ecx, [ebp - 0xa8]
call fcn.1005a4e0
add esp, 4
lea ecx, [ebp - 0x90]
mov byte [ebp - 4], 0x3a
push ecx
push eax
push dword [ebp - 0x24]
lea ecx, [ebp - 0x78]
call fcn.1005b910
sub esp, 0x18
mov byte [ebp - 4], 0x3b
mov ecx, esp
mov dword [ebp - 0x40], esp
lea edx, [ebp - 0x78]
push 0x10086570
call fcn.1005a4e0
add esp, 4
mov byte [ebp - 4], 0x3c
mov eax, dword [esi + 0x3fc]
mov dword [ebp - 0x20], 0x9344ff2b
mov dword [ebp - 0x1c], 0xf219bae0
mov dword [ebp - 0x18], 0x8e42ea73
mov byte [ebp - 0x14], 0x8d
test al, 1
jne 0x1002b279
or eax, 1
mov dword [esi + 0x3fc], eax
mov byte [ebp - 4], 0x3d
xorps xmm0, xmm0
movlpd qword [ebp - 0x34], xmm0
mov edx, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x34]
mov byte [esi + 0x2465], 1
nop dword [eax]
mov al, byte [ebp + ecx - 0x20]
mov byte [esi + ecx + 0x2458], al
add ecx, 1
adc edx, 0
jne 0x1002b268
cmp ecx, 0xd
jb 0x1002b250
push 0x1006d580
call fcn.1005d2c7
add esp, 4
mov byte [ebp - 4], 0x3c
lea edi, [esi + 0x2458]
mov ecx, edi
call fcn.100565a0
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 0x1002b2a1
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.1005a340
mov ecx, dword [0x100887fc]
mov eax, dword [ecx]
mov byte [ebp - 4], 0x41
call dword [eax]
mov byte [ebp - 4], 0x40
mov edx, dword [ebp - 0x64]
cmp edx, 0x10
jb 0x1002b2f9
mov ecx, dword [ebp - 0x78]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1002b2ef
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1002b3da
push edx
push ecx
call fcn.1005d210
add esp, 8
mov byte [ebp - 4], 0x3f
mov edx, dword [ebp - 0x94]
mov dword [ebp - 0x68], 0
mov dword [ebp - 0x64], 0xf
mov byte [ebp - 0x78], 0
cmp edx, 0x10
jb 0x1002b349
mov ecx, dword [ebp - 0xa8]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1002b33f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1002b3da
push edx
push ecx
call fcn.1005d210
add esp, 8
mov byte [ebp - 4], 0x3e
mov edx, dword [ebp - 0x4c]
mov dword [ebp - 0x98], 0
mov dword [ebp - 0x94], 0xf
mov byte [ebp - 0xa8], 0
cmp edx, 0x10
jb 0x1002b398
mov ecx, dword [ebp - 0x60]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1002b38e
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1002b3da
push edx
push ecx
call fcn.1005d210
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x7c]
mov dword [ebp - 0x50], 0
mov dword [ebp - 0x4c], 0xf
mov byte [ebp - 0x60], 0
cmp edx, 0x10
jb 0x1002b3ea
mov ecx, dword [ebp - 0x90]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1002b3e0
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x1002b3e0
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.1005d210
add esp, 8
mov ecx, dword [0x1008c9e4]
mov edx, 0x10086528
cmp dword [0x1008653c], 0x10
push 0x1008d770
cmovae edx, dword [0x10086528]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x1002c1c9
mov ecx, 0x1008d770
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1002b420
sub ecx, edx
cmp ecx, 0x20
jb 0x1002c1c9
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x21cc]
mov dword [ebp - 0x28], 0x7bdd4799
mov dword [ebp - 0x24], 0x6ba23a55
push 0x1008d770
test al, 1
jne 0x1002b4ac
or eax, 1
mov dword [esi + 0x21cc], 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 + 0x758], 1
nop
mov al, byte [ebp + ecx - 0x28]
mov byte [esi + ecx + 0x750], al
add ecx, 1
adc edx, 0
jne 0x1002b498
cmp ecx, 8
jb 0x1002b480
push 0x1006d350
call fcn.1005d2c7
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x750]
mov ecx, edi
call fcn.10056300
sub esp, 0x18
mov ecx, edi
mov edx, esp
mov dword [ebp - 0x24], 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 0x1002b4d7
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.1005a340
mov dword [ebp - 4], 0x43
mov eax, dword [esi + 0x66c]
mov dword [ebp - 0x30], 0xb9458d7
test al, 1
jne 0x1002b559
or eax, 1
mov dword [esi + 0x66c], 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 + 0x14b0], 1
nop dword [eax]
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x30]
mov byte [esi + ecx + 0x14ac], al
add ecx, 1
adc edx, 0
jne 0x1002b548
cmp ecx, 4
jb 0x1002b530
push 0x1006d3a0
call fcn.1005d2c7
add esp, 4
mov byte [ebp - 4], 0x43
lea edi, [esi + 0x14ac]
mov ecx, edi
call fcn.10056360
mov ecx, edi
mov dword [ebp - 0x80], 0
mov dword [ebp - 0x7c], 0xf
mov byte [ebp - 0x90], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1002b580
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x90]
call fcn.1005a340
mov byte [ebp - 4], 0x45
mov eax, dword [esi + 0x2e9c]
mov dword [ebp - 0x20], 0x62d952de
mov dword [ebp - 0x1c], 0x44be6340
mov dword [ebp - 0x18], 0x6e965181
mov word [ebp - 0x14], 0x1552
test al, 1
jne 0x1002b60a
or eax, 1
mov dword [esi + 0x2e9c], 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 + 0x282], 1
mov al, byte [ebp + ecx - 0x20]
mov byte [esi + ecx + 0x274], al
add ecx, 1
adc edx, 0
jne 0x1002b5f9
cmp ecx, 0xe
jb 0x1002b5e1
push 0x1006d3f0
call fcn.1005d2c7
add esp, 4
mov byte [ebp - 4], 0x45
lea edi, [esi + 0x274]
mov ecx, edi
call fcn.100563c0
mov ecx, edi
mov dword [ebp - 0x50], 0
mov dword [ebp - 0x4c], 0xf
mov byte [ebp - 0x60], 0
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1002b630
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x60]
call fcn.1005a340
push 0x10086150
lea edx, [ebp - 0x60]
mov byte [ebp - 4], 0x47
lea ecx, [ebp - 0xa8]
call fcn.1005a4e0
add esp, 4
lea ecx, [ebp - 0x90]
mov byte [ebp - 4], 0x48
push ecx
push eax
push dword [ebp - 0x24]
lea ecx, [ebp - 0x78]
call fcn.1005b910
sub esp, 0x18
mov byte [ebp - 4], 0x49
mov ecx, esp
mov dword [ebp - 0x40], esp
lea edx, [ebp - 0x78]
push 0x10086570
call fcn.1005a4e0
add esp, 4
mov byte [ebp - 4], 0x4a
mov eax, dword [esi + 0x8fc]
mov dword [ebp - 0x20], 0x7bc04587
mov dword [ebp - 0x1c], 0x18e97a02
mov dword [ebp - 0x18], 0x66c650df
mov byte [ebp - 0x14], 0x6f
test al, 1
jne 0x1002b709
or eax, 1
mov dword [esi + 0x8fc], eax
mov byte [ebp - 4], 0x4b
xorps xmm0, xmm0
movlpd qword [ebp - 0x34], xmm0
mov edx, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x34]
mov byte [esi + 0x2ec9], 1
nop dword [eax]
mov al, byte [ebp + ecx - 0x20]
mov byte [ecx + esi + 0x2ebc], al
add ecx, 1
adc edx, 0
jne 0x1002b6f8
cmp ecx, 0xd
jb 0x1002b6e0
push 0x1006d440
call fcn.1005d2c7
add esp, 4
mov byte [ebp - 4], 0x4a
lea edi, [esi + 0x2ebc]
mov ecx, edi
call fcn.10056420
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 0x1002b731
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.1005a340
mov ecx, dword [0x100887fc]
mov eax, dword [ecx]
mov byte [ebp - 4], 0x4f
call dword [eax]
mov byte [ebp - 4], 0x4e
mov edx, dword [ebp - 0x64]
cmp edx, 0x10
jb 0x1002b789
mov ecx, dword [ebp - 0x78]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1002b77f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1002b86a
push edx
push ecx
call fcn.1005d210
add esp, 8
mov byte [ebp - 4], 0x4d
mov edx, dword [ebp - 0x94]
mov dword [ebp - 0x68], 0
mov dword [ebp - 0x64], 0xf
mov byte [ebp - 0x78], 0
cmp edx, 0x10
jb 0x1002b7d9
mov ecx, dword [ebp - 0xa8]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1002b7cf
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1002b86a
push edx
push ecx
call fcn.1005d210
add esp, 8
mov byte [ebp - 4], 0x4c
mov edx, dword [ebp - 0x4c]
mov dword [ebp - 0x98], 0
mov dword [ebp - 0x94], 0xf
mov byte [ebp - 0xa8], 0
cmp edx, 0x10
jb 0x1002b828
mov ecx, dword [ebp - 0x60]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1002b81e
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1002b86a
push edx
push ecx
call fcn.1005d210
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x7c]
mov dword [ebp - 0x50], 0
mov dword [ebp - 0x4c], 0xf
mov byte [ebp - 0x60], 0
cmp edx, 0x10
jb 0x1002b87a
mov ecx, dword [ebp - 0x90]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1002b870
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x1002b870
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.1005d210
add esp, 8
mov ecx, dword [0x1008c9e4]
mov edx, 0x10086528
cmp dword [0x1008653c], 0x10
push 0x1008d770
cmovae edx, dword [0x10086528]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x1002c1c9
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x3a50]
mov dword [ebp - 0x28], 0xe5c999b3
mov dword [ebp - 0x24], 0x9f4aa08f
push 0x1008d770
test al, 1
jne 0x1002b92c
or eax, 1
mov dword [esi + 0x3a50], 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 + 0x18d8], 1
nop dword [eax]
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x28]
mov byte [ecx + esi + 0x18d0], al
add ecx, 1
adc edx, 0
jne 0x1002b918
cmp ecx, 8
jb 0x1002b900
push 0x1006d210
call fcn.1005d2c7
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x18d0]
mov ecx, edi
call fcn.10056180
sub esp, 0x18
mov ecx, edi
mov edx, esp
mov dword [ebp - 0x24], 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 0x1002b957
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.1005a340
mov dword [ebp - 4], 0x51
mov eax, dword [esi + 0x994]
mov dword [ebp - 0x30], 0x958086fd
test al, 1
jne 0x1002b9d9
or eax, 1
mov dword [esi + 0x994], 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 + 0x35e8], 1
nop dword [eax]
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x30]
mov byte [ecx + esi + 0x35e4], al
add ecx, 1
adc edx, 0
jne 0x1002b9c8
cmp ecx, 4
jb 0x1002b9b0
push 0x1006d260
call fcn.1005d2c7
add esp, 4
mov byte [ebp - 4], 0x51
lea edi, [esi + 0x35e4]
mov ecx, edi
call fcn.100561e0
mov ecx, edi
mov dword [ebp - 0x80], 0
mov dword [ebp - 0x7c], 0xf
mov byte [ebp - 0x90], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1002ba00
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x90]
call fcn.1005a340
mov byte [ebp - 4], 0x53
mov eax, dword [esi + 0x3734]
mov dword [ebp - 0x20], 0xfccd8cf4
mov dword [ebp - 0x1c], 0xb056f99a
mov dword [ebp - 0x18], 0xf0828fab
mov word [ebp - 0x14], 0x8f88
test al, 1
jne 0x1002ba8a
or eax, 1
mov dword [esi + 0x3734], 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 + 0x338a], 1
mov al, byte [ebp + ecx - 0x20]
mov byte [ecx + esi + 0x337c], al
add ecx, 1
adc edx, 0
jne 0x1002ba79
cmp ecx, 0xe
jb 0x1002ba61
push 0x1006d2b0
call fcn.1005d2c7
add esp, 4
mov byte [ebp - 4], 0x53
lea edi, [esi + 0x337c]
mov ecx, edi
call fcn.10056240
mov ecx, edi
mov dword [ebp - 0x50], 0
mov dword [ebp - 0x4c], 0xf
mov byte [ebp - 0x60], 0
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1002bab0
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x60]
call fcn.1005a340
push 0x10086340
lea edx, [ebp - 0x60]
mov byte [ebp - 4], 0x55
lea ecx, [ebp - 0xa8]
call fcn.1005a4e0
add esp, 4
lea ecx, [ebp - 0x90]
mov byte [ebp - 4], 0x56
push ecx
push eax
push dword [ebp - 0x24]
lea ecx, [ebp - 0x78]
call fcn.1005b910
sub esp, 0x18
mov byte [ebp - 4], 0x57
mov ecx, esp
mov dword [ebp - 0x40], esp
lea edx, [ebp - 0x78]
push 0x10086570
call fcn.1005a4e0
add esp, 4
mov byte [ebp - 4], 0x58
mov eax, dword [esi + 0x884]
mov dword [ebp - 0x20], 0xe5d49bad
mov dword [ebp - 0x1c], 0xec01e0d8
mov dword [ebp - 0x18], 0xf8d28ef5
mov byte [ebp - 0x14], 0xb5
test al, 1
jne 0x1002bb89
or eax, 1
mov dword [esi + 0x884], eax
mov byte [ebp - 4], 0x59
xorps xmm0, xmm0
movlpd qword [ebp - 0x34], xmm0
mov edx, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x34]
mov byte [esi + 0x1e71], 1
nop dword [eax]
mov al, byte [ebp + ecx - 0x20]
mov byte [esi + ecx + 0x1e64], al
add ecx, 1
adc edx, 0
jne 0x1002bb78
cmp ecx, 0xd
jb 0x1002bb60
push 0x1006d300
call fcn.1005d2c7
add esp, 4
mov byte [ebp - 4], 0x58
lea edi, [esi + 0x1e64]
mov ecx, edi
call fcn.100562a0
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 0x1002bbb1
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.1005a340
mov ecx, dword [0x100887fc]
mov eax, dword [ecx]
mov byte [ebp - 4], 0x5d
call dword [eax]
mov byte [ebp - 4], 0x5c
mov edx, dword [ebp - 0x64]
cmp edx, 0x10
jb 0x1002bc09
mov ecx, dword [ebp - 0x78]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1002bbff
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1002bcea
push edx
push ecx
call fcn.1005d210
add esp, 8
mov byte [ebp - 4], 0x5b
mov edx, dword [ebp - 0x94]
mov dword [ebp - 0x68], 0
mov dword [ebp - 0x64], 0xf
mov byte [ebp - 0x78], 0
cmp edx, 0x10
jb 0x1002bc59
mov ecx, dword [ebp - 0xa8]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1002bc4f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1002bcea
push edx
push ecx
call fcn.1005d210
add esp, 8
mov byte [ebp - 4], 0x5a
mov edx, dword [ebp - 0x4c]
mov dword [ebp - 0x98], 0
mov dword [ebp - 0x94], 0xf
mov byte [ebp - 0xa8], 0
cmp edx, 0x10
jb 0x1002bca8
mov ecx, dword [ebp - 0x60]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1002bc9e
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1002bcea
push edx
push ecx
call fcn.1005d210
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x7c]
mov dword [ebp - 0x50], 0
mov dword [ebp - 0x4c], 0xf
mov byte [ebp - 0x60], 0
cmp edx, 0x10
jb 0x1002bcfa
mov ecx, dword [ebp - 0x90]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1002bcf0
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x1002bcf0
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.1005d210
add esp, 8
mov ecx, dword [0x1008c9e4]
mov edx, 0x10086528
cmp dword [0x1008653c], 0x10
push 0x1008d770
cmovae edx, dword [0x10086528]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x1002c1c9
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x377c]
mov dword [ebp - 0x28], 0x51375e3
mov dword [ebp - 0x24], 0x8da02833
push 0x1008d770
test al, 1
jne 0x1002bdac
or eax, 1
mov dword [esi + 0x377c], 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 + 0x304c], 1
nop dword [eax]
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x28]
mov byte [esi + ecx + 0x3044], al
add ecx, 1
adc edx, 0
jne 0x1002bd98
cmp ecx, 8
jb 0x1002bd80
push 0x1006d0d0
call fcn.1005d2c7
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x3044]
mov ecx, edi
call fcn.10056000
sub esp, 0x18
mov ecx, edi
mov edx, esp
mov dword [ebp - 0x24], 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 0x1002bdd7
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.1005a340
mov dword [ebp - 4], 0x5f
mov eax, dword [esi + 0x26dc]
mov dword [ebp - 0x30], 0x755a6aad
test al, 1
jne 0x1002be59
or eax, 1
mov dword [esi + 0x26dc], 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 + 0x210], 1
nop dword [eax]
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x30]
mov byte [esi + ecx + 0x20c], al
add ecx, 1
adc edx, 0
jne 0x1002be48
cmp ecx, 4
jb 0x1002be30
push 0x1006d120
call fcn.1005d2c7
add esp, 4
mov byte [ebp - 4], 0x5f
lea edi, [esi + 0x20c]
mov ecx, edi
call fcn.10056060
mov ecx, edi
mov dword [ebp - 0x68], 0
mov dword [ebp - 0x64], 0xf
mov byte [ebp - 0x78], 0
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1002be80
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x78]
call fcn.1005a340
mov byte [ebp - 4], 0x61
mov eax, dword [esi + 0x35ec]
mov dword [ebp - 0x20], 0x1c1760a4
mov dword [ebp - 0x1c], 0xa2bc7126
mov dword [ebp - 0x18], 0x105863fb
mov word [ebp - 0x14], 0x734
test al, 1
jne 0x1002bf09
or eax, 1
mov dword [esi + 0x35ec], 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 + 0x1996], 1
nop
mov al, byte [ebp + ecx - 0x20]
mov byte [esi + ecx + 0x1988], al
add ecx, 1
adc edx, 0
jne 0x1002bef8
cmp ecx, 0xe
jb 0x1002bee0
push 0x1006d170
call fcn.1005d2c7
add esp, 4
mov byte [ebp - 4], 0x61
lea edi, [esi + 0x1988]
mov ecx, edi
call fcn.100560c0
mov ecx, edi
mov dword [ebp - 0xb0], 0
mov dword [ebp - 0xac], 0xf
mov byte [ebp - 0xc0], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1002bf36
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0xc0]
call fcn.1005a340
push 0x10086510
lea edx, [ebp - 0xc0]
mov byte [ebp - 4], 0x63
lea ecx, [ebp - 0xf0]
call fcn.1005a4e0
add esp, 4
lea ecx, [ebp - 0x78]
mov byte [ebp - 4], 0x64
push ecx
push eax
push dword [ebp - 0x24]
lea ecx, [ebp - 0xd8]
call fcn.1005b910
sub esp, 0x18
mov byte [ebp - 4], 0x65
mov ecx, esp
mov dword [ebp - 0x40], esp
lea edx, [ebp - 0xd8]
push 0x10086570
call fcn.1005a4e0
add esp, 4
mov byte [ebp - 4], 0x66
mov eax, dword [esi + 0x306c]
mov dword [ebp - 0x20], 0x50e77fd
mov dword [ebp - 0x1c], 0xfeeb6864
mov dword [ebp - 0x18], 0x180862a5
mov byte [ebp - 0x14], 9
test al, 1
jne 0x1002c019
or eax, 1
mov dword [esi + 0x306c], eax
mov byte [ebp - 4], 0x67
xorps xmm0, xmm0
movlpd qword [ebp - 0x34], xmm0
mov edx, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x34]
mov byte [esi + 0x18cd], 1
nop dword [eax + eax]
mov al, byte [ebp + ecx - 0x20]
mov byte [esi + ecx + 0x18c0], al
add ecx, 1
adc edx, 0
jne 0x1002c008
cmp ecx, 0xd
jb 0x1002bff0
push 0x1006d1c0
call fcn.1005d2c7
add esp, 4
mov byte [ebp - 4], 0x66
lea esi, [esi + 0x18c0]
mov ecx, esi
call fcn.10056120
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 0x1002c041
sub ecx, edi
push ecx
push esi
mov ecx, edx
call fcn.1005a340
mov ecx, dword [0x100887fc]
mov eax, dword [ecx]
mov byte [ebp - 4], 0x6b
call dword [eax]
mov byte [ebp - 4], 0x6a
mov edx, dword [ebp - 0xc4]
cmp edx, 0x10
jb 0x1002c09f
mov ecx, dword [ebp - 0xd8]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1002c095
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1002c195
push edx
push ecx
call fcn.1005d210
add esp, 8
mov byte [ebp - 4], 0x69
mov edx, dword [ebp - 0xdc]
mov dword [ebp - 0xc8], 0
mov dword [ebp - 0xc4], 0xf
mov byte [ebp - 0xd8], 0
cmp edx, 0x10
jb 0x1002c0f8
mov ecx, dword [ebp - 0xf0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1002c0ee
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1002c195
push edx
push ecx
call fcn.1005d210
add esp, 8
mov byte [ebp - 4], 0x68
mov edx, dword [ebp - 0xac]
mov dword [ebp - 0xe0], 0
mov dword [ebp - 0xdc], 0xf
mov byte [ebp - 0xf0], 0
cmp edx, 0x10
jb 0x1002c14d
mov ecx, dword [ebp - 0xc0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1002c143
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1002c195
push edx
push ecx
call fcn.1005d210
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x64]
mov dword [ebp - 0xb0], 0
mov dword [ebp - 0xac], 0xf
mov byte [ebp - 0xc0], 0
cmp edx, 0x10
jb 0x1002c1a5
mov ecx, dword [ebp - 0x78]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1002c19b
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x1002c19b
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.1005d210
add esp, 8
mov ecx, dword [0x1008c9e4]
mov edx, 0x10086528
cmp dword [0x1008653c], 0x10
push 0x1008d770
cmovae edx, dword [0x10086528]
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.1005c8e9
mov esp, ebp
pop ebp
ret