Function at 0x10035d40
Capabilities:
Parse pe header

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x10066b84
mov eax, dword fs:[0]
push eax
sub esp, 0xe8
mov eax, dword [0x1008a00c]
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 [0x1008af0c]
push 0x10091778
push 0
push 0
mov esi, dword [eax + ecx*4]
mov dword [ebp - 0x1c], 0x574c200d
mov eax, dword [esi + 0x264c]
test al, 1
jne 0x10035dec
or eax, 1
mov dword [esi + 0x264c], 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 + 0x3934], 1
nop dword [eax]
mov al, byte [ebp + ecx - 0x1c]
mov byte [ecx + esi + 0x3930], al
add ecx, 1
adc edx, 0
jne 0x10035dd8
cmp ecx, 4
jb 0x10035dc0
push 0x10073d90
call fcn.1005fde7
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x3930]
mov ecx, edi
call fcn.10055970
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 0x10035e10
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x7c]
call fcn.1005cdd0
mov dword [ebp - 4], 1
movaps xmm0, xmmword [0x1007d360]
mov eax, dword [esi + 0x2660]
mov dword [ebp - 0x28], 0x324e295b
mov word [ebp - 0x24], 0xd32c
movups xmmword [ebp - 0x38], xmm0
test al, 1
jne 0x10035e99
or eax, 1
mov dword [esi + 0x2660], 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 + 0x18fa], 1
nop
mov al, byte [ebp + ecx - 0x38]
mov byte [ecx + esi + 0x18e4], al
add ecx, 1
adc edx, 0
jne 0x10035e88
cmp ecx, 0x16
jb 0x10035e70
push 0x10073de0
call fcn.1005fde7
add esp, 4
mov byte [ebp - 4], 1
lea edi, [esi + 0x18e4]
mov ecx, edi
call fcn.100559d0
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 0x10035ec0
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x64]
call fcn.1005cdd0
push 0x1008a154
lea edx, [ebp - 0x64]
mov byte [ebp - 4], 3
lea ecx, [ebp - 0xac]
call fcn.1005cf70
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.1005e430
sub esp, 0x18
mov byte [ebp - 4], 5
mov ecx, esp
mov dword [ebp - 0x1c], esp
lea edx, [ebp - 0x94]
push 0x1008a570
call fcn.1005cf70
add esp, 4
mov byte [ebp - 4], 6
movaps xmm0, xmmword [0x1007d790]
mov eax, dword [esi + 0x2cb8]
mov word [ebp - 0x3c], 0x4b51
movups xmmword [ebp - 0x4c], xmm0
test al, 1
jne 0x10035f99
or eax, 1
mov dword [esi + 0x2cb8], 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 + 0x1866], 1
nop dword [eax]
nop dword [eax + eax]
mov al, byte [ebp + ecx - 0x4c]
mov byte [esi + ecx + 0x1854], al
add ecx, 1
adc edx, 0
jne 0x10035f88
cmp ecx, 0x12
jb 0x10035f70
push 0x10073e30
call fcn.1005fde7
add esp, 4
mov byte [ebp - 4], 6
lea edi, [esi + 0x1854]
mov ecx, edi
call fcn.10055a30
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 0x10035fc1
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.1005cdd0
mov ecx, dword [0x1008c7fc]
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 0x1003601d
mov ecx, dword [ebp - 0x94]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10036013
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10036101
push edx
push ecx
call fcn.1005fd30
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 0x10036073
mov ecx, dword [ebp - 0xac]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10036069
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10036101
push edx
push ecx
call fcn.1005fd30
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 0x100360c2
mov ecx, dword [ebp - 0x64]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100360b8
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10036101
push edx
push ecx
call fcn.1005fd30
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 0x10036111
mov ecx, dword [ebp - 0x7c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10036107
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x10036107
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.1005fd30
add esp, 8
mov ecx, dword [0x100909ec]
mov edx, 0x1008a528
cmp dword [0x1008a53c], 0x10
push 0x10091778
cmovae edx, dword [0x1008a528]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x100383b9
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x3374]
mov dword [ebp - 0x1c], 0x65a07e3b
push 0x10091778
push 0
push 0
test al, 1
jne 0x100361bc
or eax, 1
mov dword [esi + 0x3374], 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 + 0x1020], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x1c]
mov byte [esi + ecx + 0x101c], al
add ecx, 1
adc edx, 0
jne 0x100361a8
cmp ecx, 4
jb 0x10036190
push 0x10073ca0
call fcn.1005fde7
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x101c]
mov ecx, edi
call fcn.10055850
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 0x100361e6
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x94]
call fcn.1005cdd0
mov dword [ebp - 4], 9
movaps xmm0, xmmword [0x1007dc70]
mov eax, dword [esi + 0x1794]
mov dword [ebp - 0x28], 0xa2776d
mov word [ebp - 0x24], 0x9bc8
movups xmmword [ebp - 0x38], xmm0
test al, 1
jne 0x10036279
or eax, 1
mov dword [esi + 0x1794], 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 + 0x2a62], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x38]
mov byte [ecx + esi + 0x2a4c], al
add ecx, 1
adc edx, 0
jne 0x10036268
cmp ecx, 0x16
jb 0x10036250
push 0x10073cf0
call fcn.1005fde7
add esp, 4
mov byte [ebp - 4], 9
lea edi, [esi + 0x2a4c]
mov ecx, edi
call fcn.100558b0
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 0x100362a0
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x64]
call fcn.1005cdd0
push 0x1008a340
lea edx, [ebp - 0x64]
mov byte [ebp - 4], 0xb
lea ecx, [ebp - 0xac]
call fcn.1005cf70
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.1005e430
sub esp, 0x18
mov byte [ebp - 4], 0xd
mov ecx, esp
mov dword [ebp - 0x40], esp
lea edx, [ebp - 0x7c]
push 0x1008a570
call fcn.1005cf70
add esp, 4
mov byte [ebp - 4], 0xe
movaps xmm0, xmmword [0x1007e4e0]
mov eax, dword [esi + 0x3398]
mov word [ebp - 0x24], 0x1567
movups xmmword [ebp - 0x34], xmm0
test al, 1
jne 0x1003636a
or eax, 1
mov dword [esi + 0x3398], 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 + 0x1fb6], 1
mov al, byte [ebp + ecx - 0x34]
mov byte [ecx + esi + 0x1fa4], al
add ecx, 1
adc edx, 0
jne 0x10036359
cmp ecx, 0x12
jb 0x10036341
push 0x10073d40
call fcn.1005fde7
add esp, 4
mov byte [ebp - 4], 0xe
lea edi, [esi + 0x1fa4]
mov ecx, edi
call fcn.10055910
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 0x10036392
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.1005cdd0
mov ecx, dword [0x1008c7fc]
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 0x100363eb
mov ecx, dword [ebp - 0x7c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100363e1
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100364cc
push edx
push ecx
call fcn.1005fd30
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 0x1003643b
mov ecx, dword [ebp - 0xac]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10036431
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100364cc
push edx
push ecx
call fcn.1005fd30
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 0x1003648a
mov ecx, dword [ebp - 0x64]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10036480
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100364cc
push edx
push ecx
call fcn.1005fd30
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 0x100364dc
mov ecx, dword [ebp - 0x94]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100364d2
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x100364d2
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.1005fd30
add esp, 8
mov ecx, dword [0x100909ec]
mov edx, 0x1008a528
cmp dword [0x1008a53c], 0x10
push 0x10091778
cmovae edx, dword [0x1008a528]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x100383b9
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x20b4]
mov dword [ebp - 0x1c], 0xadea22a1
push 0x10091778
push 0
push 0
test al, 1
jne 0x1003657e
or eax, 1
mov dword [esi + 0x20b4], 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 + 0x1480], 1
mov al, byte [ebp + ecx - 0x1c]
mov byte [ecx + esi + 0x147c], al
add ecx, 1
adc edx, 0
jne 0x1003656a
cmp ecx, 4
jb 0x10036552
push 0x10073bb0
call fcn.1005fde7
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x147c]
mov ecx, edi
call fcn.10055730
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 0x100365a8
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x94]
call fcn.1005cdd0
mov dword [ebp - 4], 0x11
movaps xmm0, xmmword [0x1007e460]
mov eax, dword [esi + 0x25e0]
mov dword [ebp - 0x28], 0xc8e82bf7
mov word [ebp - 0x24], 0x3d06
movups xmmword [ebp - 0x38], xmm0
test al, 1
jne 0x10036639
or eax, 1
mov dword [esi + 0x25e0], 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 + 0x33da], 1
nop dword [eax]
mov al, byte [ebp + ecx - 0x38]
mov byte [ecx + esi + 0x33c4], al
add ecx, 1
adc edx, 0
jne 0x10036628
cmp ecx, 0x16
jb 0x10036610
push 0x10073c00
call fcn.1005fde7
add esp, 4
mov byte [ebp - 4], 0x11
lea edi, [esi + 0x33c4]
mov ecx, edi
call fcn.10055790
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 0x10036660
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x64]
call fcn.1005cdd0
push 0x1008a510
lea edx, [ebp - 0x64]
mov byte [ebp - 4], 0x13
lea ecx, [ebp - 0xac]
call fcn.1005cf70
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.1005e430
sub esp, 0x18
mov byte [ebp - 4], 0x15
mov ecx, esp
mov dword [ebp - 0x40], esp
lea edx, [ebp - 0x7c]
push 0x1008a570
call fcn.1005cf70
add esp, 4
mov byte [ebp - 4], 0x16
movaps xmm0, xmmword [0x1007dd10]
mov eax, dword [esi + 0xf1c]
mov word [ebp - 0x24], 0x49fd
movups xmmword [ebp - 0x34], xmm0
test al, 1
jne 0x1003672a
or eax, 1
mov dword [esi + 0xf1c], 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 + 0xf12], 1
mov al, byte [ebp + ecx - 0x34]
mov byte [ecx + esi + 0xf00], al
add ecx, 1
adc edx, 0
jne 0x10036719
cmp ecx, 0x12
jb 0x10036701
push 0x10073c50
call fcn.1005fde7
add esp, 4
mov byte [ebp - 4], 0x16
lea edi, [esi + 0xf00]
mov ecx, edi
call fcn.100557f0
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 0x10036752
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.1005cdd0
mov ecx, dword [0x1008c7fc]
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 0x100367ab
mov ecx, dword [ebp - 0x7c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100367a1
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003688c
push edx
push ecx
call fcn.1005fd30
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 0x100367fb
mov ecx, dword [ebp - 0xac]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100367f1
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003688c
push edx
push ecx
call fcn.1005fd30
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 0x1003684a
mov ecx, dword [ebp - 0x64]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10036840
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003688c
push edx
push ecx
call fcn.1005fd30
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 0x1003689c
mov ecx, dword [ebp - 0x94]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10036892
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x10036892
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.1005fd30
add esp, 8
mov ecx, dword [0x100909ec]
mov edx, 0x1008a528
cmp dword [0x1008a53c], 0x10
push 0x10091778
cmovae edx, dword [0x1008a528]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x100383b9
mov ecx, 0x10091778
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100368d0
sub ecx, edx
cmp ecx, 0x20
jb 0x100383b9
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x2938]
mov dword [ebp - 0x44], 0x4bade369
mov dword [ebp - 0x40], 0xac2c6ba8
mov byte [ebp - 0x3c], 1
push 0x10091778
test al, 1
jne 0x1003696c
or eax, 1
mov dword [esi + 0x2938], 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 + 0x2611], 1
nop dword [eax]
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x44]
mov byte [esi + ecx + 0x2608], al
add ecx, 1
adc edx, 0
jne 0x10036958
cmp ecx, 9
jb 0x10036940
push 0x10073a70
call fcn.1005fde7
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x2608]
mov ecx, edi
call fcn.100555b0
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 0x10036997
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.1005cdd0
mov dword [ebp - 4], 0x19
mov eax, dword [esi + 0x2acc]
mov dword [ebp - 0x1c], 0x3be4fc27
test al, 1
jne 0x10036a19
or eax, 1
mov dword [esi + 0x2acc], 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 + 0x15a8], 1
nop dword [eax]
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x1c]
mov byte [esi + ecx + 0x15a4], al
add ecx, 1
adc edx, 0
jne 0x10036a08
cmp ecx, 4
jb 0x100369f0
push 0x10073ac0
call fcn.1005fde7
add esp, 4
mov byte [ebp - 4], 0x19
lea edi, [esi + 0x15a4]
mov ecx, edi
call fcn.10055610
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 0x10036a43
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x94]
call fcn.1005cdd0
mov byte [ebp - 4], 0x1b
movaps xmm0, xmmword [0x1007dd90]
mov eax, dword [esi + 0x3a20]
mov dword [ebp - 0x28], 0x5ee6f571
mov word [ebp - 0x24], 0x51e6
movups xmmword [ebp - 0x38], xmm0
test al, 1
jne 0x10036aca
or eax, 1
mov dword [esi + 0x3a20], 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 + 0x1dba], 1
mov al, byte [ebp + ecx - 0x38]
mov byte [esi + ecx + 0x1da4], al
add ecx, 1
adc edx, 0
jne 0x10036ab9
cmp ecx, 0x16
jb 0x10036aa1
push 0x10073b10
call fcn.1005fde7
add esp, 4
mov byte [ebp - 4], 0x1b
lea edi, [esi + 0x1da4]
mov ecx, edi
call fcn.10055670
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 0x10036af0
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x64]
call fcn.1005cdd0
push 0x1008a154
lea edx, [ebp - 0x64]
mov byte [ebp - 4], 0x1d
lea ecx, [ebp - 0xac]
call fcn.1005cf70
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.1005e430
sub esp, 0x18
mov byte [ebp - 4], 0x1f
mov ecx, esp
mov dword [ebp - 0x1c], esp
lea edx, [ebp - 0x7c]
push 0x1008a570
call fcn.1005cf70
add esp, 4
mov byte [ebp - 4], 0x20
movaps xmm0, xmmword [0x1007e550]
mov eax, dword [esi + 0x470]
mov word [ebp - 0x24], 0x977b
movups xmmword [ebp - 0x34], xmm0
test al, 1
jne 0x10036bba
or eax, 1
mov dword [esi + 0x470], 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 + 0x27a], 1
mov al, byte [ebp + ecx - 0x34]
mov byte [esi + ecx + 0x268], al
add ecx, 1
adc edx, 0
jne 0x10036ba9
cmp ecx, 0x12
jb 0x10036b91
push 0x10073b60
call fcn.1005fde7
add esp, 4
mov byte [ebp - 4], 0x20
lea edi, [esi + 0x268]
mov ecx, edi
call fcn.100556d0
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 0x10036be2
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.1005cdd0
mov ecx, dword [0x1008c7fc]
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 0x10036c3a
mov ecx, dword [ebp - 0x7c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10036c30
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10036d1b
push edx
push ecx
call fcn.1005fd30
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 0x10036c8a
mov ecx, dword [ebp - 0xac]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10036c80
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10036d1b
push edx
push ecx
call fcn.1005fd30
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 0x10036cd9
mov ecx, dword [ebp - 0x64]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10036ccf
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10036d1b
push edx
push ecx
call fcn.1005fd30
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 0x10036d2b
mov ecx, dword [ebp - 0x94]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10036d21
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x10036d21
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.1005fd30
add esp, 8
mov ecx, dword [0x100909ec]
mov edx, 0x1008a528
cmp dword [0x1008a53c], 0x10
push 0x10091778
cmovae edx, dword [0x1008a528]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x100383b9
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x173c]
mov dword [ebp - 0x44], 0x85f36783
mov dword [ebp - 0x40], 0x8e7639b6
mov byte [ebp - 0x3c], 0xeb
push 0x10091778
test al, 1
jne 0x10036ddc
or eax, 1
mov dword [esi + 0x173c], 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 + 0x1969], 1
nop dword [eax + eax]
mov al, byte [ebp + ecx - 0x44]
mov byte [ecx + esi + 0x1960], al
add ecx, 1
adc edx, 0
jne 0x10036dc8
cmp ecx, 9
jb 0x10036db0
push 0x10073930
call fcn.1005fde7
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x1960]
mov ecx, edi
call fcn.10055430
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 0x10036e07
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.1005cdd0
mov dword [ebp - 4], 0x27
mov eax, dword [esi + 0x253c]
mov dword [ebp - 0x1c], 0xf5ba78cd
test al, 1
jne 0x10036e89
or eax, 1
mov dword [esi + 0x253c], 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 + 0x1df4], 1
nop dword [eax]
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x1c]
mov byte [ecx + esi + 0x1df0], al
add ecx, 1
adc edx, 0
jne 0x10036e78
cmp ecx, 4
jb 0x10036e60
push 0x10073980
call fcn.1005fde7
add esp, 4
mov byte [ebp - 4], 0x27
lea edi, [esi + 0x1df0]
mov ecx, edi
call fcn.10055490
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 0x10036eb3
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x94]
call fcn.1005cdd0
mov byte [ebp - 4], 0x29
movaps xmm0, xmmword [0x1007da30]
mov eax, dword [esi + 0x10ac]
mov dword [ebp - 0x28], 0x90b8719b
mov word [ebp - 0x24], 0x3f8
movups xmmword [ebp - 0x38], xmm0
test al, 1
jne 0x10036f3a
or eax, 1
mov dword [esi + 0x10ac], 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 + 0x147a], 1
mov al, byte [ebp + ecx - 0x38]
mov byte [ecx + esi + 0x1464], al
add ecx, 1
adc edx, 0
jne 0x10036f29
cmp ecx, 0x16
jb 0x10036f11
push 0x100739d0
call fcn.1005fde7
add esp, 4
mov byte [ebp - 4], 0x29
lea edi, [esi + 0x1464]
mov ecx, edi
call fcn.100554f0
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 0x10036f60
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x64]
call fcn.1005cdd0
push 0x1008a340
lea edx, [ebp - 0x64]
mov byte [ebp - 4], 0x2b
lea ecx, [ebp - 0xac]
call fcn.1005cf70
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.1005e430
sub esp, 0x18
mov byte [ebp - 4], 0x2d
mov ecx, esp
mov dword [ebp - 0x40], esp
lea edx, [ebp - 0x7c]
push 0x1008a570
call fcn.1005cf70
add esp, 4
mov byte [ebp - 4], 0x2e
movaps xmm0, xmmword [0x1007e250]
mov eax, dword [esi + 0x604]
mov word [ebp - 0x24], 0x1391
movups xmmword [ebp - 0x34], xmm0
test al, 1
jne 0x1003702a
or eax, 1
mov dword [esi + 0x604], 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 + 0x2062], 1
mov al, byte [ebp + ecx - 0x34]
mov byte [esi + ecx + 0x2050], al
add ecx, 1
adc edx, 0
jne 0x10037019
cmp ecx, 0x12
jb 0x10037001
push 0x10073a20
call fcn.1005fde7
add esp, 4
mov byte [ebp - 4], 0x2e
lea edi, [esi + 0x2050]
mov ecx, edi
call fcn.10055550
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 0x10037052
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.1005cdd0
mov ecx, dword [0x1008c7fc]
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 0x100370aa
mov ecx, dword [ebp - 0x7c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100370a0
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003718b
push edx
push ecx
call fcn.1005fd30
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 0x100370fa
mov ecx, dword [ebp - 0xac]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100370f0
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003718b
push edx
push ecx
call fcn.1005fd30
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 0x10037149
mov ecx, dword [ebp - 0x64]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003713f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003718b
push edx
push ecx
call fcn.1005fd30
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 0x1003719b
mov ecx, dword [ebp - 0x94]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10037191
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x10037191
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.1005fd30
add esp, 8
mov ecx, dword [0x100909ec]
mov edx, 0x1008a528
cmp dword [0x1008a53c], 0x10
push 0x10091778
cmovae edx, dword [0x1008a528]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x100383b9
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x28a8]
mov dword [ebp - 0x44], 0xd2dfd19
mov dword [ebp - 0x40], 0xd0d0014c
mov byte [ebp - 0x3c], 0x71
push 0x10091778
test al, 1
jne 0x1003724c
or eax, 1
mov dword [esi + 0x28a8], 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 + 0x1b39], 1
nop dword [eax + eax]
mov al, byte [ebp + ecx - 0x44]
mov byte [esi + ecx + 0x1b30], al
add ecx, 1
adc edx, 0
jne 0x10037238
cmp ecx, 9
jb 0x10037220
push 0x100737f0
call fcn.1005fde7
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x1b30]
mov ecx, edi
call fcn.100552b0
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 0x10037277
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.1005cdd0
mov dword [ebp - 4], 0x35
mov eax, dword [esi + 0x30e8]
mov dword [ebp - 0x1c], 0x7d64e257
test al, 1
jne 0x100372f9
or eax, 1
mov dword [esi + 0x30e8], 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 + 0x34f0], 1
nop dword [eax]
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x1c]
mov byte [esi + ecx + 0x34ec], al
add ecx, 1
adc edx, 0
jne 0x100372e8
cmp ecx, 4
jb 0x100372d0
push 0x10073840
call fcn.1005fde7
add esp, 4
mov byte [ebp - 4], 0x35
lea edi, [esi + 0x34ec]
mov ecx, edi
call fcn.10055310
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 0x10037323
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x94]
call fcn.1005cdd0
mov byte [ebp - 4], 0x37
movaps xmm0, xmmword [0x1007e120]
mov eax, dword [esi + 0xc50]
mov dword [ebp - 0x28], 0x1866eb01
mov word [ebp - 0x24], 0x3b02
movups xmmword [ebp - 0x38], xmm0
test al, 1
jne 0x100373aa
or eax, 1
mov dword [esi + 0xc50], 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 + 0x3a0e], 1
mov al, byte [ebp + ecx - 0x38]
mov byte [esi + ecx + 0x39f8], al
add ecx, 1
adc edx, 0
jne 0x10037399
cmp ecx, 0x16
jb 0x10037381
push 0x10073890
call fcn.1005fde7
add esp, 4
mov byte [ebp - 4], 0x37
lea edi, [esi + 0x39f8]
mov ecx, edi
call fcn.10055370
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 0x100373d0
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x64]
call fcn.1005cdd0
push 0x1008a510
lea edx, [ebp - 0x64]
mov byte [ebp - 4], 0x39
lea ecx, [ebp - 0xac]
call fcn.1005cf70
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.1005e430
sub esp, 0x18
mov byte [ebp - 4], 0x3b
mov ecx, esp
mov dword [ebp - 0x40], esp
lea edx, [ebp - 0x7c]
push 0x1008a570
call fcn.1005cf70
add esp, 4
mov byte [ebp - 4], 0x3c
movaps xmm0, xmmword [0x1007d980]
mov eax, dword [esi + 0x9b4]
mov word [ebp - 0x24], 0x890b
movups xmmword [ebp - 0x34], xmm0
test al, 1
jne 0x1003749a
or eax, 1
mov dword [esi + 0x9b4], 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 + 0x7c2], 1
mov al, byte [ebp + ecx - 0x34]
mov byte [esi + ecx + 0x7b0], al
add ecx, 1
adc edx, 0
jne 0x10037489
cmp ecx, 0x12
jb 0x10037471
push 0x100738e0
call fcn.1005fde7
add esp, 4
mov byte [ebp - 4], 0x3c
lea edi, [esi + 0x7b0]
mov ecx, edi
call fcn.100553d0
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 0x100374c2
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.1005cdd0
mov ecx, dword [0x1008c7fc]
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 0x1003751a
mov ecx, dword [ebp - 0x7c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10037510
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100375fb
push edx
push ecx
call fcn.1005fd30
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 0x1003756a
mov ecx, dword [ebp - 0xac]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10037560
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100375fb
push edx
push ecx
call fcn.1005fd30
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 0x100375b9
mov ecx, dword [ebp - 0x64]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100375af
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100375fb
push edx
push ecx
call fcn.1005fd30
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 0x1003760b
mov ecx, dword [ebp - 0x94]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10037601
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x10037601
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.1005fd30
add esp, 8
mov ecx, dword [0x100909ec]
mov edx, 0x1008a528
cmp dword [0x1008a53c], 0x10
push 0x10091778
cmovae edx, dword [0x1008a528]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x100383b9
mov ecx, 0x10091778
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10037640
sub ecx, edx
cmp ecx, 0x20
jb 0x100383b9
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x2d74]
mov dword [ebp - 0x18], 0xe3fd3169
mov dword [ebp - 0x14], 0x8d2e9e4d
push 0x10091778
test al, 1
jne 0x100376cc
or eax, 1
mov dword [esi + 0x2d74], 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 + 0x2f18], 1
nop
mov al, byte [ebp + ecx - 0x18]
mov byte [esi + ecx + 0x2f10], al
add ecx, 1
adc edx, 0
jne 0x100376b8
cmp ecx, 8
jb 0x100376a0
push 0x100736b0
call fcn.1005fde7
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x2f10]
mov ecx, edi
call fcn.10055130
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 0x100376f7
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.1005cdd0
mov dword [ebp - 4], 0x43
mov eax, dword [esi + 0x2fdc]
mov dword [ebp - 0x1c], 0x93b42e27
test al, 1
jne 0x10037779
or eax, 1
mov dword [esi + 0x2fdc], 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 + 0x594], 1
nop dword [eax]
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x1c]
mov byte [esi + ecx + 0x590], al
add ecx, 1
adc edx, 0
jne 0x10037768
cmp ecx, 4
jb 0x10037750
push 0x10073700
call fcn.1005fde7
add esp, 4
mov byte [ebp - 4], 0x43
lea edi, [esi + 0x590]
mov ecx, edi
call fcn.10055190
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 0x100377a3
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x94]
call fcn.1005cdd0
mov byte [ebp - 4], 0x45
movaps xmm0, xmmword [0x1007dcb0]
mov eax, dword [esi + 0x768]
mov dword [ebp - 0x28], 0xf6b62771
mov word [ebp - 0x24], 0xb14a
movups xmmword [ebp - 0x38], xmm0
test al, 1
jne 0x1003782a
or eax, 1
mov dword [esi + 0x768], 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 + 0x394e], 1
mov al, byte [ebp + ecx - 0x38]
mov byte [ecx + esi + 0x3938], al
add ecx, 1
adc edx, 0
jne 0x10037819
cmp ecx, 0x16
jb 0x10037801
push 0x10073750
call fcn.1005fde7
add esp, 4
mov byte [ebp - 4], 0x45
lea edi, [esi + 0x3938]
mov ecx, edi
call fcn.100551f0
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 0x10037850
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x64]
call fcn.1005cdd0
push 0x1008a154
lea edx, [ebp - 0x64]
mov byte [ebp - 4], 0x47
lea ecx, [ebp - 0xac]
call fcn.1005cf70
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.1005e430
sub esp, 0x18
mov byte [ebp - 4], 0x49
mov ecx, esp
mov dword [ebp - 0x40], esp
lea edx, [ebp - 0x7c]
push 0x1008a570
call fcn.1005cf70
add esp, 4
mov byte [ebp - 4], 0x4a
movaps xmm0, xmmword [0x1007e490]
mov eax, dword [esi + 0x3114]
mov word [ebp - 0x24], 0x457b
movups xmmword [ebp - 0x34], xmm0
test al, 1
jne 0x1003791a
or eax, 1
mov dword [esi + 0x3114], 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 + 0x2b1a], 1
mov al, byte [ebp + ecx - 0x34]
mov byte [ecx + esi + 0x2b08], al
add ecx, 1
adc edx, 0
jne 0x10037909
cmp ecx, 0x12
jb 0x100378f1
push 0x100737a0
call fcn.1005fde7
add esp, 4
mov byte [ebp - 4], 0x4a
lea edi, [esi + 0x2b08]
mov ecx, edi
call fcn.10055250
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 0x10037942
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.1005cdd0
mov ecx, dword [0x1008c7fc]
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 0x1003799a
mov ecx, dword [ebp - 0x7c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10037990
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10037a7b
push edx
push ecx
call fcn.1005fd30
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 0x100379ea
mov ecx, dword [ebp - 0xac]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100379e0
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10037a7b
push edx
push ecx
call fcn.1005fd30
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 0x10037a39
mov ecx, dword [ebp - 0x64]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10037a2f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10037a7b
push edx
push ecx
call fcn.1005fd30
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 0x10037a8b
mov ecx, dword [ebp - 0x94]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10037a81
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x10037a81
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.1005fd30
add esp, 8
mov ecx, dword [0x100909ec]
mov edx, 0x1008a528
cmp dword [0x1008a53c], 0x10
push 0x10091778
cmovae edx, dword [0x1008a528]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x100383b9
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0xabc]
mov dword [ebp - 0x18], 0x8543cb73
mov dword [ebp - 0x14], 0xcdb0e2d7
push 0x10091778
test al, 1
jne 0x10037b3c
or eax, 1
mov dword [esi + 0xabc], 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 + 0x124c], 1
nop dword [eax]
nop dword [eax + eax]
mov al, byte [ebp + ecx - 0x18]
mov byte [ecx + esi + 0x1244], al
add ecx, 1
adc edx, 0
jne 0x10037b28
cmp ecx, 8
jb 0x10037b10
push 0x10073570
call fcn.1005fde7
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x1244]
mov ecx, edi
call fcn.10054fb0
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 0x10037b67
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.1005cdd0
mov dword [ebp - 4], 0x51
mov eax, dword [esi + 0x918]
mov dword [ebp - 0x1c], 0xf50ad43d
test al, 1
jne 0x10037be9
or eax, 1
mov dword [esi + 0x918], 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 + 0x20f8], 1
nop dword [eax]
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x1c]
mov byte [ecx + esi + 0x20f4], al
add ecx, 1
adc edx, 0
jne 0x10037bd8
cmp ecx, 4
jb 0x10037bc0
push 0x100735c0
call fcn.1005fde7
add esp, 4
mov byte [ebp - 4], 0x51
lea edi, [esi + 0x20f4]
mov ecx, edi
call fcn.10055010
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 0x10037c13
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x94]
call fcn.1005cdd0
mov byte [ebp - 4], 0x53
movaps xmm0, xmmword [0x1007e330]
mov eax, dword [esi + 0x2afc]
mov dword [ebp - 0x28], 0x9008dd6b
mov word [ebp - 0x24], 0xcdd0
movups xmmword [ebp - 0x38], xmm0
test al, 1
jne 0x10037c9a
or eax, 1
mov dword [esi + 0x2afc], 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 + 0x34ca], 1
mov al, byte [ebp + ecx - 0x38]
mov byte [ecx + esi + 0x34b4], al
add ecx, 1
adc edx, 0
jne 0x10037c89
cmp ecx, 0x16
jb 0x10037c71
push 0x10073610
call fcn.1005fde7
add esp, 4
mov byte [ebp - 4], 0x53
lea edi, [esi + 0x34b4]
mov ecx, edi
call fcn.10055070
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 0x10037cc0
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x64]
call fcn.1005cdd0
push 0x1008a340
lea edx, [ebp - 0x64]
mov byte [ebp - 4], 0x55
lea ecx, [ebp - 0xac]
call fcn.1005cf70
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.1005e430
sub esp, 0x18
mov byte [ebp - 4], 0x57
mov ecx, esp
mov dword [ebp - 0x40], esp
lea edx, [ebp - 0x7c]
push 0x1008a570
call fcn.1005cf70
add esp, 4
mov byte [ebp - 4], 0x58
movaps xmm0, xmmword [0x1007de90]
mov eax, dword [esi + 0x306c]
mov word [ebp - 0x24], 0xbf61
movups xmmword [ebp - 0x34], xmm0
test al, 1
jne 0x10037d8a
or eax, 1
mov dword [esi + 0x306c], 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 + 0x2b72], 1
mov al, byte [ebp + ecx - 0x34]
mov byte [ecx + esi + 0x2b60], al
add ecx, 1
adc edx, 0
jne 0x10037d79
cmp ecx, 0x12
jb 0x10037d61
push 0x10073660
call fcn.1005fde7
add esp, 4
mov byte [ebp - 4], 0x58
lea edi, [esi + 0x2b60]
mov ecx, edi
call fcn.100550d0
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 0x10037db2
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.1005cdd0
mov ecx, dword [0x1008c7fc]
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 0x10037e0a
mov ecx, dword [ebp - 0x7c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10037e00
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10037eeb
push edx
push ecx
call fcn.1005fd30
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 0x10037e5a
mov ecx, dword [ebp - 0xac]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10037e50
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10037eeb
push edx
push ecx
call fcn.1005fd30
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 0x10037ea9
mov ecx, dword [ebp - 0x64]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10037e9f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10037eeb
push edx
push ecx
call fcn.1005fd30
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 0x10037efb
mov ecx, dword [ebp - 0x94]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10037ef1
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x10037ef1
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.1005fd30
add esp, 8
mov ecx, dword [0x100909ec]
mov edx, 0x1008a528
cmp dword [0x1008a53c], 0x10
push 0x10091778
cmovae edx, dword [0x1008a528]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x100383b9
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x97c]
mov dword [ebp - 0x18], 0x1bdd255b
mov dword [ebp - 0x14], 0x2162002f
push 0x10091778
test al, 1
jne 0x10037fac
or eax, 1
mov dword [esi + 0x97c], 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 + 0x19d0], 1
nop dword [eax]
nop dword [eax + eax]
mov al, byte [ebp + ecx - 0x18]
mov byte [esi + ecx + 0x19c8], al
add ecx, 1
adc edx, 0
jne 0x10037f98
cmp ecx, 8
jb 0x10037f80
push 0x10073430
call fcn.1005fde7
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x19c8]
mov ecx, edi
call fcn.10054e30
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 0x10037fd7
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.1005cdd0
mov dword [ebp - 4], 0x5f
mov eax, dword [esi + 0x1850]
mov dword [ebp - 0x1c], 0x6b943a15
test al, 1
jne 0x10038059
or eax, 1
mov dword [esi + 0x1850], 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 + 0x1ae0], 1
nop dword [eax]
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x1c]
mov byte [esi + ecx + 0x1adc], al
add ecx, 1
adc edx, 0
jne 0x10038048
cmp ecx, 4
jb 0x10038030
push 0x10073480
call fcn.1005fde7
add esp, 4
mov byte [ebp - 4], 0x5f
lea edi, [esi + 0x1adc]
mov ecx, edi
call fcn.10054e90
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 0x10038080
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x7c]
call fcn.1005cdd0
mov byte [ebp - 4], 0x61
movaps xmm0, xmmword [0x1007d090]
mov eax, dword [esi + 0x34f4]
mov dword [ebp - 0x28], 0xe963343
mov word [ebp - 0x24], 0x2f28
movups xmmword [ebp - 0x38], xmm0
test al, 1
jne 0x10038109
or eax, 1
mov dword [esi + 0x34f4], 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 + 0x338e], 1
nop dword [eax + eax]
mov al, byte [ebp + ecx - 0x38]
mov byte [esi + ecx + 0x3378], al
add ecx, 1
adc edx, 0
jne 0x100380f8
cmp ecx, 0x16
jb 0x100380e0
push 0x100734d0
call fcn.1005fde7
add esp, 4
mov byte [ebp - 4], 0x61
lea edi, [esi + 0x3378]
mov ecx, edi
call fcn.10054ef0
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 0x10038136
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0xc4]
call fcn.1005cdd0
push 0x1008a510
lea edx, [ebp - 0xc4]
mov byte [ebp - 4], 0x63
lea ecx, [ebp - 0xf4]
call fcn.1005cf70
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.1005e430
sub esp, 0x18
mov byte [ebp - 4], 0x65
mov ecx, esp
mov dword [ebp - 0x40], esp
lea edx, [ebp - 0xdc]
push 0x1008a570
call fcn.1005cf70
add esp, 4
mov byte [ebp - 4], 0x66
movaps xmm0, xmmword [0x1007d600]
mov eax, dword [esi + 0x2cac]
mov word [ebp - 0x24], 0x5149
movups xmmword [ebp - 0x34], xmm0
test al, 1
jne 0x10038209
or eax, 1
mov dword [esi + 0x2cac], 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 + 0x37ba], 1
mov al, byte [ebp + ecx - 0x34]
mov byte [esi + ecx + 0x37a8], al
add ecx, 1
adc edx, 0
jne 0x100381f8
cmp ecx, 0x12
jb 0x100381e0
push 0x10073520
call fcn.1005fde7
add esp, 4
mov byte [ebp - 4], 0x66
lea esi, [esi + 0x37a8]
mov ecx, esi
call fcn.10054f50
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 0x10038231
sub ecx, edi
push ecx
push esi
mov ecx, edx
call fcn.1005cdd0
mov ecx, dword [0x1008c7fc]
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 0x1003828f
mov ecx, dword [ebp - 0xdc]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10038285
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10038385
push edx
push ecx
call fcn.1005fd30
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 0x100382e8
mov ecx, dword [ebp - 0xf4]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100382de
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10038385
push edx
push ecx
call fcn.1005fd30
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 0x1003833d
mov ecx, dword [ebp - 0xc4]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10038333
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10038385
push edx
push ecx
call fcn.1005fd30
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 0x10038395
mov ecx, dword [ebp - 0x7c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003838b
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x1003838b
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.1005fd30
add esp, 8
mov ecx, dword [0x100909ec]
mov edx, 0x1008a528
cmp dword [0x1008a53c], 0x10
push 0x10091778
cmovae edx, dword [0x1008a528]
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.1005f409
mov esp, ebp
pop ebp
ret