Function at 0x10035b80
Capabilities:
Parse pe header

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x10079516
mov eax, dword fs:[0]
push eax
sub esp, 0xdc
mov eax, dword [0x100a600c]
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 [0x100a7804]
push 0x100aa080
push 0
push 0
mov esi, dword [eax + ecx*4]
mov dword [ebp - 0x20], 0xa9984aff
mov eax, dword [esi + 0x286c]
test al, 1
jne 0x10035c2c
or eax, 1
mov dword [esi + 0x286c], 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 + 0x32e0], 1
nop dword [eax]
mov al, byte [ebp + ecx - 0x20]
mov byte [esi + ecx + 0x32dc], al
add ecx, 1
adc edx, 0
jne 0x10035c18
cmp ecx, 4
jb 0x10035c00
push 0x10088910
call fcn.100738a7
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x32dc]
mov ecx, edi
call fcn.1006b2b0
mov ecx, edi
mov dword [ebp - 0x78], 0
mov dword [ebp - 0x74], 0xf
mov byte [ebp - 0x88], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10035c53
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x88]
call fcn.10070610
mov dword [ebp - 4], 1
mov eax, dword [esi + 0x2684]
mov dword [ebp - 0x40], 0xc0d540f6
mov dword [ebp - 0x3c], 0x4722b00
mov dword [ebp - 0x38], 0xcc9a43a9
mov word [ebp - 0x34], 0x5d12
test al, 1
jne 0x10035ce9
or eax, 1
mov dword [esi + 0x2684], 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 + 0x4076], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x40]
mov byte [esi + ecx + 0x4068], al
add ecx, 1
adc edx, 0
jne 0x10035cd8
cmp ecx, 0xe
jb 0x10035cc0
push 0x10088960
call fcn.100738a7
add esp, 4
mov byte [ebp - 4], 1
lea edi, [esi + 0x4068]
mov ecx, edi
call fcn.1006b310
mov ecx, edi
mov dword [ebp - 0x48], 0
mov dword [ebp - 0x44], 0xf
mov byte [ebp - 0x58], 0
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10035d10
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x58]
call fcn.10070610
push 0x100a6a88
lea edx, [ebp - 0x58]
mov byte [ebp - 4], 3
lea ecx, [ebp - 0xa0]
call fcn.100707b0
add esp, 4
lea ecx, [ebp - 0x88]
mov byte [ebp - 4], 4
push ecx
push eax
push dword [ebp - 0x1f]
lea ecx, [ebp - 0x70]
call fcn.10071ef0
sub esp, 0x18
mov byte [ebp - 4], 5
mov ecx, esp
mov dword [ebp - 0x20], esp
lea edx, [ebp - 0x70]
push 0x100a6ea8
call fcn.100707b0
add esp, 4
mov byte [ebp - 4], 6
movaps xmm0, xmmword [0x10097a50]
mov eax, dword [esi + 0x424]
mov byte [ebp - 0x30], 0xd9
movups xmmword [ebp - 0x40], xmm0
test al, 1
jne 0x10035dd9
or eax, 1
mov dword [esi + 0x424], 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 + 0x3995], 1
nop
mov al, byte [ebp + ecx - 0x40]
mov byte [esi + ecx + 0x3984], al
add ecx, 1
adc edx, 0
jne 0x10035dc8
cmp ecx, 0x11
jb 0x10035db0
push 0x100889b0
call fcn.100738a7
add esp, 4
mov byte [ebp - 4], 6
lea edi, [esi + 0x3984]
mov ecx, edi
call fcn.1006b370
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 0x10035e01
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10070610
mov ecx, dword [0x100acb38]
mov eax, dword [ecx]
mov byte [ebp - 4], 5
call dword [eax + 4]
mov byte [ebp - 4], 4
mov edx, dword [ebp - 0x5c]
cmp edx, 0x10
jb 0x10035e5a
mov ecx, dword [ebp - 0x70]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10035e50
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10035f3b
push edx
push ecx
call fcn.100737f0
add esp, 8
mov byte [ebp - 4], 3
mov edx, dword [ebp - 0x8c]
mov dword [ebp - 0x60], 0
mov dword [ebp - 0x5c], 0xf
mov byte [ebp - 0x70], 0
cmp edx, 0x10
jb 0x10035eaa
mov ecx, dword [ebp - 0xa0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10035ea0
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10035f3b
push edx
push ecx
call fcn.100737f0
add esp, 8
mov byte [ebp - 4], 1
mov edx, dword [ebp - 0x44]
mov dword [ebp - 0x90], 0
mov dword [ebp - 0x8c], 0xf
mov byte [ebp - 0xa0], 0
cmp edx, 0x10
jb 0x10035ef9
mov ecx, dword [ebp - 0x58]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10035eef
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10035f3b
push edx
push ecx
call fcn.100737f0
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x74]
mov dword [ebp - 0x48], 0
mov dword [ebp - 0x44], 0xf
mov byte [ebp - 0x58], 0
cmp edx, 0x10
jb 0x10035f4b
mov ecx, dword [ebp - 0x88]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10035f41
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x10035f41
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.100737f0
add esp, 8
mov ecx, dword [0x100a8edc]
mov edx, 0x100a6e60
cmp dword [0x100a6e74], 0x10
push 0x100aa080
cmovae edx, dword [0x100a6e60]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x1003828e
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x3c34]
mov dword [ebp - 0x20], 0xe37c2039
push 0x100aa080
push 0
push 0
test al, 1
jne 0x10035fed
or eax, 1
mov dword [esi + 0x3c34], 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 + 0x11dc], 1
mov al, byte [ebp + ecx - 0x20]
mov byte [esi + ecx + 0x11d8], al
add ecx, 1
adc edx, 0
jne 0x10035fd9
cmp ecx, 4
jb 0x10035fc1
push 0x10088820
call fcn.100738a7
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x11d8]
mov ecx, edi
call fcn.1006b190
mov ecx, edi
mov dword [ebp - 0x60], 0
mov dword [ebp - 0x5c], 0xf
mov byte [ebp - 0x70], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10036011
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x70]
call fcn.10070610
mov dword [ebp - 4], 9
mov eax, dword [esi + 0x4aec]
mov dword [ebp - 0x40], 0x8a312a30
mov dword [ebp - 0x3c], 0x1a3c810a
mov dword [ebp - 0x38], 0x867e296f
mov word [ebp - 0x34], 0xf718
test al, 1
jne 0x1003609b
or eax, 1
mov dword [esi + 0x4aec], 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 + 0xb8a], 1
mov al, byte [ebp + ecx - 0x40]
mov byte [ecx + esi + 0xb7c], al
add ecx, 1
adc edx, 0
jne 0x1003608a
cmp ecx, 0xe
jb 0x10036072
push 0x10088870
call fcn.100738a7
add esp, 4
mov byte [ebp - 4], 9
lea edi, [esi + 0xb7c]
mov ecx, edi
call fcn.1006b1f0
mov ecx, edi
mov dword [ebp - 0x48], 0
mov dword [ebp - 0x44], 0xf
mov byte [ebp - 0x58], 0
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100360c0
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x58]
call fcn.10070610
push 0x100a6c78
lea edx, [ebp - 0x58]
mov byte [ebp - 4], 0xb
lea ecx, [ebp - 0xa0]
call fcn.100707b0
add esp, 4
lea ecx, [ebp - 0x70]
mov byte [ebp - 4], 0xc
push ecx
push eax
push dword [ebp - 0x33]
lea ecx, [ebp - 0x88]
call fcn.10071ef0
sub esp, 0x18
mov byte [ebp - 4], 0xd
mov ecx, esp
mov dword [ebp - 0x34], esp
lea edx, [ebp - 0x88]
push 0x100a6ea8
call fcn.100707b0
add esp, 4
mov byte [ebp - 4], 0xe
movaps xmm0, xmmword [0x10097d20]
mov eax, dword [esi + 0x3afc]
mov byte [ebp - 0x1c], 0x1f
movups xmmword [ebp - 0x2c], xmm0
test al, 1
jne 0x1003618b
or eax, 1
mov dword [esi + 0x3afc], 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 + 0x1e71], 1
mov al, byte [ebp + ecx - 0x2c]
mov byte [ecx + esi + 0x1e60], al
add ecx, 1
adc edx, 0
jne 0x1003617a
cmp ecx, 0x11
jb 0x10036162
push 0x100888c0
call fcn.100738a7
add esp, 4
mov byte [ebp - 4], 0xe
lea edi, [esi + 0x1e60]
mov ecx, edi
call fcn.1006b250
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 0x100361b3
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10070610
mov ecx, dword [0x100acb38]
mov eax, dword [ecx]
mov byte [ebp - 4], 0xd
call dword [eax + 4]
mov byte [ebp - 4], 0xc
mov edx, dword [ebp - 0x74]
cmp edx, 0x10
jb 0x1003620f
mov ecx, dword [ebp - 0x88]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10036205
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100362f0
push edx
push ecx
call fcn.100737f0
add esp, 8
mov byte [ebp - 4], 0xb
mov edx, dword [ebp - 0x8c]
mov dword [ebp - 0x78], 0
mov dword [ebp - 0x74], 0xf
mov byte [ebp - 0x88], 0
cmp edx, 0x10
jb 0x10036262
mov ecx, dword [ebp - 0xa0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10036258
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100362f0
push edx
push ecx
call fcn.100737f0
add esp, 8
mov byte [ebp - 4], 9
mov edx, dword [ebp - 0x44]
mov dword [ebp - 0x90], 0
mov dword [ebp - 0x8c], 0xf
mov byte [ebp - 0xa0], 0
cmp edx, 0x10
jb 0x100362b1
mov ecx, dword [ebp - 0x58]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100362a7
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100362f0
push edx
push ecx
call fcn.100737f0
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x5c]
mov dword [ebp - 0x48], 0
mov dword [ebp - 0x44], 0xf
mov byte [ebp - 0x58], 0
cmp edx, 0x10
jb 0x10036300
mov ecx, dword [ebp - 0x70]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100362f6
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x100362f6
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.100737f0
add esp, 8
mov ecx, dword [0x100a8edc]
mov edx, 0x100a6e60
cmp dword [0x100a6e74], 0x10
push 0x100aa080
cmovae edx, dword [0x100a6e60]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x1003828e
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x16ac]
mov dword [ebp - 0x20], 0xb9d856f5
push 0x100aa080
push 0
push 0
test al, 1
jne 0x100363ac
or eax, 1
mov dword [esi + 0x16ac], 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 + 0x9a4], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x20]
mov byte [ecx + esi + 0x9a0], al
add ecx, 1
adc edx, 0
jne 0x10036398
cmp ecx, 4
jb 0x10036380
push 0x10088730
call fcn.100738a7
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x9a0]
mov ecx, edi
call fcn.1006b070
mov ecx, edi
mov dword [ebp - 0x60], 0
mov dword [ebp - 0x5c], 0xf
mov byte [ebp - 0x70], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100363d0
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x70]
call fcn.10070610
mov dword [ebp - 4], 0x11
mov eax, dword [esi + 0xd0c]
mov dword [ebp - 0x40], 0xd0955cfc
mov dword [ebp - 0x3c], 0xa42314c
mov dword [ebp - 0x38], 0xdcda5fa3
mov word [ebp - 0x34], 0x475e
test al, 1
jne 0x1003645a
or eax, 1
mov dword [esi + 0xd0c], 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 + 0x2f8a], 1
mov al, byte [ebp + ecx - 0x40]
mov byte [ecx + esi + 0x2f7c], al
add ecx, 1
adc edx, 0
jne 0x10036449
cmp ecx, 0xe
jb 0x10036431
push 0x10088780
call fcn.100738a7
add esp, 4
mov byte [ebp - 4], 0x11
lea edi, [esi + 0x2f7c]
mov ecx, edi
call fcn.1006b0d0
mov ecx, edi
mov dword [ebp - 0x48], 0
mov dword [ebp - 0x44], 0xf
mov byte [ebp - 0x58], 0
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10036480
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x58]
call fcn.10070610
push 0x100a6e48
lea edx, [ebp - 0x58]
mov byte [ebp - 4], 0x13
lea ecx, [ebp - 0xa0]
call fcn.100707b0
add esp, 4
lea ecx, [ebp - 0x70]
mov byte [ebp - 4], 0x14
push ecx
push eax
push dword [ebp - 0x33]
lea ecx, [ebp - 0x88]
call fcn.10071ef0
sub esp, 0x18
mov byte [ebp - 4], 0x15
mov ecx, esp
mov dword [ebp - 0x34], esp
lea edx, [ebp - 0x88]
push 0x100a6ea8
call fcn.100707b0
add esp, 4
mov byte [ebp - 4], 0x16
movaps xmm0, xmmword [0x10097ab0]
mov eax, dword [esi + 0x1af4]
mov byte [ebp - 0x1c], 0xd3
movups xmmword [ebp - 0x2c], xmm0
test al, 1
jne 0x1003654b
or eax, 1
mov dword [esi + 0x1af4], 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 + 0x11f1], 1
mov al, byte [ebp + ecx - 0x2c]
mov byte [ecx + esi + 0x11e0], al
add ecx, 1
adc edx, 0
jne 0x1003653a
cmp ecx, 0x11
jb 0x10036522
push 0x100887d0
call fcn.100738a7
add esp, 4
mov byte [ebp - 4], 0x16
lea edi, [esi + 0x11e0]
mov ecx, edi
call fcn.1006b130
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 0x10036573
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10070610
mov ecx, dword [0x100acb38]
mov eax, dword [ecx]
mov byte [ebp - 4], 0x15
call dword [eax + 4]
mov byte [ebp - 4], 0x14
mov edx, dword [ebp - 0x74]
cmp edx, 0x10
jb 0x100365cf
mov ecx, dword [ebp - 0x88]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100365c5
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100366b0
push edx
push ecx
call fcn.100737f0
add esp, 8
mov byte [ebp - 4], 0x13
mov edx, dword [ebp - 0x8c]
mov dword [ebp - 0x78], 0
mov dword [ebp - 0x74], 0xf
mov byte [ebp - 0x88], 0
cmp edx, 0x10
jb 0x10036622
mov ecx, dword [ebp - 0xa0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10036618
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100366b0
push edx
push ecx
call fcn.100737f0
add esp, 8
mov byte [ebp - 4], 0x11
mov edx, dword [ebp - 0x44]
mov dword [ebp - 0x90], 0
mov dword [ebp - 0x8c], 0xf
mov byte [ebp - 0xa0], 0
cmp edx, 0x10
jb 0x10036671
mov ecx, dword [ebp - 0x58]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10036667
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100366b0
push edx
push ecx
call fcn.100737f0
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x5c]
mov dword [ebp - 0x48], 0
mov dword [ebp - 0x44], 0xf
mov byte [ebp - 0x58], 0
cmp edx, 0x10
jb 0x100366c0
mov ecx, dword [ebp - 0x70]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100366b6
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x100366b6
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.100737f0
add esp, 8
mov ecx, dword [0x100a8edc]
mov edx, 0x100a6e60
cmp dword [0x100a6e74], 0x10
push 0x100aa080
cmovae edx, dword [0x100a6e60]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x1003828e
mov ecx, 0x100aa080
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100366f4
sub ecx, edx
cmp ecx, 0x20
jae 0x1003670b
cmp ecx, 1
ja 0x1003828e
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x67c]
mov dword [ebp - 0x38], 0xaf07d589
mov dword [ebp - 0x34], 0xa4247b0a
mov byte [ebp - 0x30], 0xe1
push 0x100aa080
test al, 1
jne 0x1003678c
or eax, 1
mov dword [esi + 0x67c], 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 + 0xec1], 1
nop dword [eax]
mov al, byte [ebp + ecx - 0x38]
mov byte [ecx + esi + 0xeb8], al
add ecx, 1
adc edx, 0
jne 0x10036778
cmp ecx, 9
jb 0x10036760
push 0x100885f0
call fcn.100738a7
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0xeb8]
mov ecx, edi
call fcn.1006aef0
sub esp, 0x18
mov ecx, edi
mov edx, esp
mov dword [ebp - 0x34], 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 0x100367b7
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10070610
mov dword [ebp - 4], 0x19
mov eax, dword [esi + 0x2838]
mov dword [ebp - 0x20], 0xdf4ecac7
test al, 1
jne 0x10036839
or eax, 1
mov dword [esi + 0x2838], 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 + 0x548], 1
nop dword [eax]
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x20]
mov byte [ecx + esi + 0x544], al
add ecx, 1
adc edx, 0
jne 0x10036828
cmp ecx, 4
jb 0x10036810
push 0x10088640
call fcn.100738a7
add esp, 4
mov byte [ebp - 4], 0x19
lea edi, [esi + 0x544]
mov ecx, edi
call fcn.1006af50
mov ecx, edi
mov dword [ebp - 0xa8], 0
mov dword [ebp - 0xa4], 0xf
mov byte [ebp - 0xb8], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10036866
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0xb8]
call fcn.10070610
mov byte [ebp - 4], 0x1b
mov eax, dword [esi + 0x3478]
mov dword [ebp - 0x2c], 0xb603c0ce
mov dword [ebp - 0x28], 0xa4383756
mov dword [ebp - 0x24], 0xba4cc391
mov word [ebp - 0x20], 0x4144
test al, 1
jne 0x100368f9
or eax, 1
mov dword [esi + 0x3478], 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 + 0x3166], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x2c]
mov byte [ecx + esi + 0x3158], al
add ecx, 1
adc edx, 0
jne 0x100368e8
cmp ecx, 0xe
jb 0x100368d0
push 0x10088690
call fcn.100738a7
add esp, 4
mov byte [ebp - 4], 0x1b
lea edi, [esi + 0x3158]
mov ecx, edi
call fcn.1006afb0
mov ecx, edi
mov dword [ebp - 0x60], 0
mov dword [ebp - 0x5c], 0xf
mov byte [ebp - 0x70], 0
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10036920
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x70]
call fcn.10070610
push 0x100a6a88
lea edx, [ebp - 0x70]
mov byte [ebp - 4], 0x1d
lea ecx, [ebp - 0xa0]
call fcn.100707b0
add esp, 4
lea ecx, [ebp - 0xb8]
mov byte [ebp - 4], 0x1e
push ecx
push eax
push dword [ebp - 0x33]
lea ecx, [ebp - 0x88]
call fcn.10071ef0
sub esp, 0x18
mov byte [ebp - 4], 0x1f
mov ecx, esp
mov dword [ebp - 0x20], esp
lea edx, [ebp - 0x88]
push 0x100a6ea8
call fcn.100707b0
add esp, 4
mov byte [ebp - 4], 0x20
movaps xmm0, xmmword [0x10098b60]
mov eax, dword [esi + 0x754]
mov byte [ebp - 0x44], 0xe1
movups xmmword [ebp - 0x54], xmm0
test al, 1
jne 0x100369f9
or eax, 1
mov dword [esi + 0x754], 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 + 0x2519], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x54]
mov byte [ecx + esi + 0x2508], al
add ecx, 1
adc edx, 0
jne 0x100369e8
cmp ecx, 0x11
jb 0x100369d0
push 0x100886e0
call fcn.100738a7
add esp, 4
mov byte [ebp - 4], 0x20
lea edi, [esi + 0x2508]
mov ecx, edi
call fcn.1006b010
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 0x10036a21
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10070610
mov ecx, dword [0x100acb38]
mov eax, dword [ecx]
mov byte [ebp - 4], 0x25
call dword [eax]
mov byte [ebp - 4], 0x24
mov edx, dword [ebp - 0x74]
cmp edx, 0x10
jb 0x10036a7c
mov ecx, dword [ebp - 0x88]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10036a72
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10036b63
push edx
push ecx
call fcn.100737f0
add esp, 8
mov byte [ebp - 4], 0x23
mov edx, dword [ebp - 0x8c]
mov dword [ebp - 0x78], 0
mov dword [ebp - 0x74], 0xf
mov byte [ebp - 0x88], 0
cmp edx, 0x10
jb 0x10036acf
mov ecx, dword [ebp - 0xa0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10036ac5
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10036b63
push edx
push ecx
call fcn.100737f0
add esp, 8
mov byte [ebp - 4], 0x22
mov edx, dword [ebp - 0x5c]
mov dword [ebp - 0x90], 0
mov dword [ebp - 0x8c], 0xf
mov byte [ebp - 0xa0], 0
cmp edx, 0x10
jb 0x10036b1e
mov ecx, dword [ebp - 0x70]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10036b14
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10036b63
push edx
push ecx
call fcn.100737f0
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0xa4]
mov dword [ebp - 0x60], 0
mov dword [ebp - 0x5c], 0xf
mov byte [ebp - 0x70], 0
cmp edx, 0x10
jb 0x10036b73
mov ecx, dword [ebp - 0xb8]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10036b69
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x10036b69
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.100737f0
add esp, 8
mov ecx, dword [0x100a8edc]
mov edx, 0x100a6e60
cmp dword [0x100a6e74], 0x10
push 0x100aa080
cmovae edx, dword [0x100a6e60]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x1003828e
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x2118]
mov dword [ebp - 0x38], 0xbb5ba17b
mov dword [ebp - 0x34], 0x90a44f98
mov byte [ebp - 0x30], 0x13
push 0x100aa080
test al, 1
jne 0x10036c1c
or eax, 1
mov dword [esi + 0x2118], 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 + 0x1c21], 1
mov al, byte [ebp + ecx - 0x38]
mov byte [esi + ecx + 0x1c18], al
add ecx, 1
adc edx, 0
jne 0x10036c08
cmp ecx, 9
jb 0x10036bf0
push 0x100884b0
call fcn.100738a7
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x1c18]
mov ecx, edi
call fcn.1006ad70
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 0x10036c47
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10070610
mov dword [ebp - 4], 0x27
mov eax, dword [esi + 0x28c4]
mov dword [ebp - 0x20], 0xcb12be35
test al, 1
jne 0x10036cc9
or eax, 1
mov dword [esi + 0x28c4], eax
mov byte [ebp - 4], 0x28
xorps xmm0, xmm0
movlpd qword [ebp - 0x38], xmm0
mov edx, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x38]
mov byte [esi + 0xde0], 1
nop dword [eax]
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x20]
mov byte [esi + ecx + 0xddc], al
add ecx, 1
adc edx, 0
jne 0x10036cb8
cmp ecx, 4
jb 0x10036ca0
push 0x10088500
call fcn.100738a7
add esp, 4
mov byte [ebp - 4], 0x27
lea edi, [esi + 0xddc]
mov ecx, edi
call fcn.1006add0
mov ecx, edi
mov dword [ebp - 0xa8], 0
mov dword [ebp - 0xa4], 0xf
mov byte [ebp - 0xb8], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10036cf6
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0xb8]
call fcn.10070610
mov byte [ebp - 4], 0x29
mov eax, dword [esi + 0x2220]
mov dword [ebp - 0x2c], 0xa25fb43c
mov dword [ebp - 0x28], 0x90b803c4
mov dword [ebp - 0x24], 0xae10b763
mov word [ebp - 0x20], 0x75d6
test al, 1
jne 0x10036d89
or eax, 1
mov dword [esi + 0x2220], eax
mov byte [ebp - 4], 0x2a
xorps xmm0, xmm0
movlpd qword [ebp - 0x38], xmm0
mov edx, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x38]
mov byte [esi + 0x29e], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x2c]
mov byte [esi + ecx + 0x290], al
add ecx, 1
adc edx, 0
jne 0x10036d78
cmp ecx, 0xe
jb 0x10036d60
push 0x10088550
call fcn.100738a7
add esp, 4
mov byte [ebp - 4], 0x29
lea edi, [esi + 0x290]
mov ecx, edi
call fcn.1006ae30
mov ecx, edi
mov dword [ebp - 0x60], 0
mov dword [ebp - 0x5c], 0xf
mov byte [ebp - 0x70], 0
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10036db0
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x70]
call fcn.10070610
push 0x100a6c78
lea edx, [ebp - 0x70]
mov byte [ebp - 4], 0x2b
lea ecx, [ebp - 0xa0]
call fcn.100707b0
add esp, 4
lea ecx, [ebp - 0xb8]
mov byte [ebp - 4], 0x2c
push ecx
push eax
push dword [ebp - 0x14]
lea ecx, [ebp - 0x88]
call fcn.10071ef0
sub esp, 0x18
mov byte [ebp - 4], 0x2d
mov ecx, esp
mov dword [ebp - 0x34], esp
lea edx, [ebp - 0x88]
push 0x100a6ea8
call fcn.100707b0
add esp, 4
mov byte [ebp - 4], 0x2e
movaps xmm0, xmmword [0x100989e0]
mov eax, dword [esi + 0x1228]
mov byte [ebp - 0x44], 0x13
movups xmmword [ebp - 0x54], xmm0
test al, 1
jne 0x10036e89
or eax, 1
mov dword [esi + 0x1228], eax
mov byte [ebp - 4], 0x2f
xorps xmm0, xmm0
movlpd qword [ebp - 0x24], xmm0
mov edx, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x24]
mov byte [esi + 0x4705], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x54]
mov byte [esi + ecx + 0x46f4], al
add ecx, 1
adc edx, 0
jne 0x10036e78
cmp ecx, 0x11
jb 0x10036e60
push 0x100885a0
call fcn.100738a7
add esp, 4
mov byte [ebp - 4], 0x2e
lea edi, [esi + 0x46f4]
mov ecx, edi
call fcn.1006ae90
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 0x10036eb1
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10070610
mov ecx, dword [0x100acb38]
mov eax, dword [ecx]
mov byte [ebp - 4], 0x33
call dword [eax]
mov byte [ebp - 4], 0x32
mov edx, dword [ebp - 0x74]
cmp edx, 0x10
jb 0x10036f0c
mov ecx, dword [ebp - 0x88]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10036f02
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10036ff3
push edx
push ecx
call fcn.100737f0
add esp, 8
mov byte [ebp - 4], 0x31
mov edx, dword [ebp - 0x8c]
mov dword [ebp - 0x78], 0
mov dword [ebp - 0x74], 0xf
mov byte [ebp - 0x88], 0
cmp edx, 0x10
jb 0x10036f5f
mov ecx, dword [ebp - 0xa0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10036f55
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10036ff3
push edx
push ecx
call fcn.100737f0
add esp, 8
mov byte [ebp - 4], 0x30
mov edx, dword [ebp - 0x5c]
mov dword [ebp - 0x90], 0
mov dword [ebp - 0x8c], 0xf
mov byte [ebp - 0xa0], 0
cmp edx, 0x10
jb 0x10036fae
mov ecx, dword [ebp - 0x70]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10036fa4
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10036ff3
push edx
push ecx
call fcn.100737f0
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0xa4]
mov dword [ebp - 0x60], 0
mov dword [ebp - 0x5c], 0xf
mov byte [ebp - 0x70], 0
cmp edx, 0x10
jb 0x10037003
mov ecx, dword [ebp - 0xb8]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10036ff9
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x10036ff9
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.100737f0
add esp, 8
mov ecx, dword [0x100a8edc]
mov edx, 0x100a6e60
cmp dword [0x100a6e74], 0x10
push 0x100aa080
cmovae edx, dword [0x100a6e60]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x1003828e
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x33b8]
mov dword [ebp - 0x38], 0x257b13cf
mov dword [ebp - 0x34], 0xcc428fae
mov byte [ebp - 0x30], 0xa7
push 0x100aa080
test al, 1
jne 0x100370ac
or eax, 1
mov dword [esi + 0x33b8], 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 + 0x12b1], 1
mov al, byte [ebp + ecx - 0x38]
mov byte [esi + ecx + 0x12a8], al
add ecx, 1
adc edx, 0
jne 0x10037098
cmp ecx, 9
jb 0x10037080
push 0x10088370
call fcn.100738a7
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x12a8]
mov ecx, edi
call fcn.1006abf0
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 0x100370d7
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10070610
mov dword [ebp - 4], 0x35
mov eax, dword [esi + 0x2444]
mov dword [ebp - 0x20], 0x55320c81
test al, 1
jne 0x10037159
or eax, 1
mov dword [esi + 0x2444], eax
mov byte [ebp - 4], 0x36
xorps xmm0, xmm0
movlpd qword [ebp - 0x38], xmm0
mov edx, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x38]
mov byte [esi + 0x2f60], 1
nop dword [eax]
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x20]
mov byte [esi + ecx + 0x2f5c], al
add ecx, 1
adc edx, 0
jne 0x10037148
cmp ecx, 4
jb 0x10037130
push 0x100883c0
call fcn.100738a7
add esp, 4
mov byte [ebp - 4], 0x35
lea edi, [esi + 0x2f5c]
mov ecx, edi
call fcn.1006ac50
mov ecx, edi
mov dword [ebp - 0xa8], 0
mov dword [ebp - 0xa4], 0xf
mov byte [ebp - 0xb8], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10037186
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0xb8]
call fcn.10070610
mov byte [ebp - 4], 0x37
mov eax, dword [esi + 0x1dc0]
mov dword [ebp - 0x2c], 0x3c7f0688
mov dword [ebp - 0x28], 0xcc5ec3f2
mov dword [ebp - 0x24], 0x303005d7
mov word [ebp - 0x20], 0xb5e0
test al, 1
jne 0x10037219
or eax, 1
mov dword [esi + 0x1dc0], eax
mov byte [ebp - 4], 0x38
xorps xmm0, xmm0
movlpd qword [ebp - 0x38], xmm0
mov edx, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x38]
mov byte [esi + 0xf3e], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x2c]
mov byte [esi + ecx + 0xf30], al
add ecx, 1
adc edx, 0
jne 0x10037208
cmp ecx, 0xe
jb 0x100371f0
push 0x10088410
call fcn.100738a7
add esp, 4
mov byte [ebp - 4], 0x37
lea edi, [esi + 0xf30]
mov ecx, edi
call fcn.1006acb0
mov ecx, edi
mov dword [ebp - 0x60], 0
mov dword [ebp - 0x5c], 0xf
mov byte [ebp - 0x70], 0
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10037240
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x70]
call fcn.10070610
push 0x100a6e48
lea edx, [ebp - 0x70]
mov byte [ebp - 4], 0x39
lea ecx, [ebp - 0xa0]
call fcn.100707b0
add esp, 4
lea ecx, [ebp - 0xb8]
mov byte [ebp - 4], 0x3a
push ecx
push eax
push dword [ebp - 0x14]
lea ecx, [ebp - 0x88]
call fcn.10071ef0
sub esp, 0x18
mov byte [ebp - 4], 0x3b
mov ecx, esp
mov dword [ebp - 0x34], esp
lea edx, [ebp - 0x88]
push 0x100a6ea8
call fcn.100707b0
add esp, 4
mov byte [ebp - 4], 0x3c
movaps xmm0, xmmword [0x10098330]
mov eax, dword [esi + 0x149c]
mov byte [ebp - 0x44], 0xa7
movups xmmword [ebp - 0x54], xmm0
test al, 1
jne 0x10037319
or eax, 1
mov dword [esi + 0x149c], eax
mov byte [ebp - 4], 0x3d
xorps xmm0, xmm0
movlpd qword [ebp - 0x24], xmm0
mov edx, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x24]
mov byte [esi + 0x38f1], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x54]
mov byte [esi + ecx + 0x38e0], al
add ecx, 1
adc edx, 0
jne 0x10037308
cmp ecx, 0x11
jb 0x100372f0
push 0x10088460
call fcn.100738a7
add esp, 4
mov byte [ebp - 4], 0x3c
lea edi, [esi + 0x38e0]
mov ecx, edi
call fcn.1006ad10
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 0x10037341
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10070610
mov ecx, dword [0x100acb38]
mov eax, dword [ecx]
mov byte [ebp - 4], 0x41
call dword [eax]
mov byte [ebp - 4], 0x40
mov edx, dword [ebp - 0x74]
cmp edx, 0x10
jb 0x1003739c
mov ecx, dword [ebp - 0x88]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10037392
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10037483
push edx
push ecx
call fcn.100737f0
add esp, 8
mov byte [ebp - 4], 0x3f
mov edx, dword [ebp - 0x8c]
mov dword [ebp - 0x78], 0
mov dword [ebp - 0x74], 0xf
mov byte [ebp - 0x88], 0
cmp edx, 0x10
jb 0x100373ef
mov ecx, dword [ebp - 0xa0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100373e5
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10037483
push edx
push ecx
call fcn.100737f0
add esp, 8
mov byte [ebp - 4], 0x3e
mov edx, dword [ebp - 0x5c]
mov dword [ebp - 0x90], 0
mov dword [ebp - 0x8c], 0xf
mov byte [ebp - 0xa0], 0
cmp edx, 0x10
jb 0x1003743e
mov ecx, dword [ebp - 0x70]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10037434
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10037483
push edx
push ecx
call fcn.100737f0
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0xa4]
mov dword [ebp - 0x60], 0
mov dword [ebp - 0x5c], 0xf
mov byte [ebp - 0x70], 0
cmp edx, 0x10
jb 0x10037493
mov ecx, dword [ebp - 0xb8]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10037489
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x10037489
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.100737f0
add esp, 8
mov ecx, dword [0x100a8edc]
mov edx, 0x100a6e60
cmp dword [0x100a6e74], 0x10
push 0x100aa080
cmovae edx, dword [0x100a6e60]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x1003828e
mov ecx, 0x100aa080
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100374c7
sub ecx, edx
cmp ecx, 0x20
jae 0x100374de
cmp ecx, 1
ja 0x1003828e
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x165c]
mov dword [ebp - 0x18], 0xe101e73d
mov dword [ebp - 0x14], 0x95da82bf
push 0x100aa080
test al, 1
jne 0x1003755c
or eax, 1
mov dword [esi + 0x165c], eax
mov dword [ebp - 4], 0x42
xorps xmm0, xmm0
movlpd qword [ebp - 0x38], xmm0
mov edx, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x38]
mov byte [esi + 0x3b28], 1
nop dword [eax + eax]
mov al, byte [ebp + ecx - 0x18]
mov byte [esi + ecx + 0x3b20], al
add ecx, 1
adc edx, 0
jne 0x10037548
cmp ecx, 8
jb 0x10037530
push 0x10088230
call fcn.100738a7
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x3b20]
mov ecx, edi
call fcn.1006aa70
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 0x10037587
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10070610
mov dword [ebp - 4], 0x43
mov eax, dword [esi + 0x350c]
mov dword [ebp - 0x20], 0x9148f873
test al, 1
jne 0x10037609
or eax, 1
mov dword [esi + 0x350c], eax
mov byte [ebp - 4], 0x44
xorps xmm0, xmm0
movlpd qword [ebp - 0x38], xmm0
mov edx, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x38]
mov byte [esi + 0x14d0], 1
nop dword [eax]
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x20]
mov byte [esi + ecx + 0x14cc], al
add ecx, 1
adc edx, 0
jne 0x100375f8
cmp ecx, 4
jb 0x100375e0
push 0x10088280
call fcn.100738a7
add esp, 4
mov byte [ebp - 4], 0x43
lea edi, [esi + 0x14cc]
mov ecx, edi
call fcn.1006aad0
mov ecx, edi
mov dword [ebp - 0xa8], 0
mov dword [ebp - 0xa4], 0xf
mov byte [ebp - 0xb8], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10037636
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0xb8]
call fcn.10070610
mov byte [ebp - 4], 0x45
mov eax, dword [esi + 0x1c54]
mov dword [ebp - 0x2c], 0xf805f27a
mov dword [ebp - 0x28], 0xbac6dbaa
mov dword [ebp - 0x24], 0xf44af125
mov word [ebp - 0x20], 0xadb8
test al, 1
jne 0x100376c9
or eax, 1
mov dword [esi + 0x1c54], eax
mov byte [ebp - 4], 0x46
xorps xmm0, xmm0
movlpd qword [ebp - 0x38], xmm0
mov edx, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x38]
mov byte [esi + 0x308a], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x2c]
mov byte [ecx + esi + 0x307c], al
add ecx, 1
adc edx, 0
jne 0x100376b8
cmp ecx, 0xe
jb 0x100376a0
push 0x100882d0
call fcn.100738a7
add esp, 4
mov byte [ebp - 4], 0x45
lea edi, [esi + 0x307c]
mov ecx, edi
call fcn.1006ab30
mov ecx, edi
mov dword [ebp - 0x60], 0
mov dword [ebp - 0x5c], 0xf
mov byte [ebp - 0x70], 0
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100376f0
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x70]
call fcn.10070610
push 0x100a6a88
lea edx, [ebp - 0x70]
mov byte [ebp - 4], 0x47
lea ecx, [ebp - 0xa0]
call fcn.100707b0
add esp, 4
lea ecx, [ebp - 0xb8]
mov byte [ebp - 4], 0x48
push ecx
push eax
push dword [ebp - 0x14]
lea ecx, [ebp - 0x88]
call fcn.10071ef0
sub esp, 0x18
mov byte [ebp - 4], 0x49
mov ecx, esp
mov dword [ebp - 0x34], esp
lea edx, [ebp - 0x88]
push 0x100a6ea8
call fcn.100707b0
add esp, 4
mov byte [ebp - 4], 0x4a
movaps xmm0, xmmword [0x10098d40]
mov eax, dword [esi + 0x1020]
mov byte [ebp - 0x44], 0x55
movups xmmword [ebp - 0x54], xmm0
test al, 1
jne 0x100377c9
or eax, 1
mov dword [esi + 0x1020], eax
mov byte [ebp - 4], 0x4b
xorps xmm0, xmm0
movlpd qword [ebp - 0x24], xmm0
mov edx, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x24]
mov byte [esi + 0xac5], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x54]
mov byte [ecx + esi + 0xab4], al
add ecx, 1
adc edx, 0
jne 0x100377b8
cmp ecx, 0x11
jb 0x100377a0
push 0x10088320
call fcn.100738a7
add esp, 4
mov byte [ebp - 4], 0x4a
lea edi, [esi + 0xab4]
mov ecx, edi
call fcn.1006ab90
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 0x100377f1
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10070610
mov ecx, dword [0x100acb38]
mov eax, dword [ecx]
mov byte [ebp - 4], 0x4f
call dword [eax]
mov byte [ebp - 4], 0x4e
mov edx, dword [ebp - 0x74]
cmp edx, 0x10
jb 0x1003784c
mov ecx, dword [ebp - 0x88]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10037842
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10037933
push edx
push ecx
call fcn.100737f0
add esp, 8
mov byte [ebp - 4], 0x4d
mov edx, dword [ebp - 0x8c]
mov dword [ebp - 0x78], 0
mov dword [ebp - 0x74], 0xf
mov byte [ebp - 0x88], 0
cmp edx, 0x10
jb 0x1003789f
mov ecx, dword [ebp - 0xa0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10037895
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10037933
push edx
push ecx
call fcn.100737f0
add esp, 8
mov byte [ebp - 4], 0x4c
mov edx, dword [ebp - 0x5c]
mov dword [ebp - 0x90], 0
mov dword [ebp - 0x8c], 0xf
mov byte [ebp - 0xa0], 0
cmp edx, 0x10
jb 0x100378ee
mov ecx, dword [ebp - 0x70]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100378e4
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10037933
push edx
push ecx
call fcn.100737f0
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0xa4]
mov dword [ebp - 0x60], 0
mov dword [ebp - 0x5c], 0xf
mov byte [ebp - 0x70], 0
cmp edx, 0x10
jb 0x10037943
mov ecx, dword [ebp - 0xb8]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10037939
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x10037939
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.100737f0
add esp, 8
mov ecx, dword [0x100a8edc]
mov edx, 0x100a6e60
cmp dword [0x100a6e74], 0x10
push 0x100aa080
cmovae edx, dword [0x100a6e60]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x1003828e
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x25d8]
mov dword [ebp - 0x18], 0xa1cd793b
mov dword [ebp - 0x14], 0xe3f0ce09
push 0x100aa080
test al, 1
jne 0x100379ec
or eax, 1
mov dword [esi + 0x25d8], eax
mov dword [ebp - 4], 0x50
xorps xmm0, xmm0
movlpd qword [ebp - 0x38], xmm0
mov edx, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x38]
mov byte [esi + 0x25a0], 1
nop dword [eax]
mov al, byte [ebp + ecx - 0x18]
mov byte [ecx + esi + 0x2598], al
add ecx, 1
adc edx, 0
jne 0x100379d8
cmp ecx, 8
jb 0x100379c0
push 0x100880f0
call fcn.100738a7
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x2598]
mov ecx, edi
call fcn.1006a8f0
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 0x10037a17
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10070610
mov dword [ebp - 4], 0x51
mov eax, dword [esi + 0x1c68]
mov dword [ebp - 0x20], 0xd1846675
test al, 1
jne 0x10037a99
or eax, 1
mov dword [esi + 0x1c68], eax
mov byte [ebp - 4], 0x52
xorps xmm0, xmm0
movlpd qword [ebp - 0x38], xmm0
mov edx, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x38]
mov byte [esi + 0x22f4], 1
nop dword [eax]
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x20]
mov byte [ecx + esi + 0x22f0], al
add ecx, 1
adc edx, 0
jne 0x10037a88
cmp ecx, 4
jb 0x10037a70
push 0x10088140
call fcn.100738a7
add esp, 4
mov byte [ebp - 4], 0x51
lea edi, [esi + 0x22f0]
mov ecx, edi
call fcn.1006a950
mov ecx, edi
mov dword [ebp - 0xa8], 0
mov dword [ebp - 0xa4], 0xf
mov byte [ebp - 0xb8], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10037ac6
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0xb8]
call fcn.10070610
mov byte [ebp - 4], 0x53
mov eax, dword [esi + 0x3640]
mov dword [ebp - 0x2c], 0xb8c96c7c
mov dword [ebp - 0x28], 0xccec971c
mov dword [ebp - 0x24], 0xb4866f23
mov word [ebp - 0x20], 0xe10e
test al, 1
jne 0x10037b59
or eax, 1
mov dword [esi + 0x3640], eax
mov byte [ebp - 4], 0x54
xorps xmm0, xmm0
movlpd qword [ebp - 0x38], xmm0
mov edx, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x38]
mov byte [esi + 0x4412], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x2c]
mov byte [ecx + esi + 0x4404], al
add ecx, 1
adc edx, 0
jne 0x10037b48
cmp ecx, 0xe
jb 0x10037b30
push 0x10088190
call fcn.100738a7
add esp, 4
mov byte [ebp - 4], 0x53
lea edi, [esi + 0x4404]
mov ecx, edi
call fcn.1006a9b0
mov ecx, edi
mov dword [ebp - 0x60], 0
mov dword [ebp - 0x5c], 0xf
mov byte [ebp - 0x70], 0
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10037b80
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x70]
call fcn.10070610
push 0x100a6c78
lea edx, [ebp - 0x70]
mov byte [ebp - 4], 0x55
lea ecx, [ebp - 0xa0]
call fcn.100707b0
add esp, 4
lea ecx, [ebp - 0xb8]
mov byte [ebp - 4], 0x56
push ecx
push eax
push dword [ebp - 0x14]
lea ecx, [ebp - 0x88]
call fcn.10071ef0
sub esp, 0x18
mov byte [ebp - 4], 0x57
mov ecx, esp
mov dword [ebp - 0x34], esp
lea edx, [ebp - 0x88]
push 0x100a6ea8
call fcn.100707b0
add esp, 4
mov byte [ebp - 4], 0x58
movaps xmm0, xmmword [0x10098360]
mov eax, dword [esi + 0x35ec]
mov byte [ebp - 0x44], 0x53
movups xmmword [ebp - 0x54], xmm0
test al, 1
jne 0x10037c59
or eax, 1
mov dword [esi + 0x35ec], eax
mov byte [ebp - 4], 0x59
xorps xmm0, xmm0
movlpd qword [ebp - 0x24], xmm0
mov edx, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x24]
mov byte [esi + 0x571], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x54]
mov byte [ecx + esi + 0x560], al
add ecx, 1
adc edx, 0
jne 0x10037c48
cmp ecx, 0x11
jb 0x10037c30
push 0x100881e0
call fcn.100738a7
add esp, 4
mov byte [ebp - 4], 0x58
lea edi, [esi + 0x560]
mov ecx, edi
call fcn.1006aa10
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 0x10037c81
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10070610
mov ecx, dword [0x100acb38]
mov eax, dword [ecx]
mov byte [ebp - 4], 0x5d
call dword [eax]
mov byte [ebp - 4], 0x5c
mov edx, dword [ebp - 0x74]
cmp edx, 0x10
jb 0x10037cdc
mov ecx, dword [ebp - 0x88]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10037cd2
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10037dc3
push edx
push ecx
call fcn.100737f0
add esp, 8
mov byte [ebp - 4], 0x5b
mov edx, dword [ebp - 0x8c]
mov dword [ebp - 0x78], 0
mov dword [ebp - 0x74], 0xf
mov byte [ebp - 0x88], 0
cmp edx, 0x10
jb 0x10037d2f
mov ecx, dword [ebp - 0xa0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10037d25
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10037dc3
push edx
push ecx
call fcn.100737f0
add esp, 8
mov byte [ebp - 4], 0x5a
mov edx, dword [ebp - 0x5c]
mov dword [ebp - 0x90], 0
mov dword [ebp - 0x8c], 0xf
mov byte [ebp - 0xa0], 0
cmp edx, 0x10
jb 0x10037d7e
mov ecx, dword [ebp - 0x70]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10037d74
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10037dc3
push edx
push ecx
call fcn.100737f0
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0xa4]
mov dword [ebp - 0x60], 0
mov dword [ebp - 0x5c], 0xf
mov byte [ebp - 0x70], 0
cmp edx, 0x10
jb 0x10037dd3
mov ecx, dword [ebp - 0xb8]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10037dc9
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x10037dc9
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.100737f0
add esp, 8
mov ecx, dword [0x100a8edc]
mov edx, 0x100a6e60
cmp dword [0x100a6e74], 0x10
push 0x100aa080
cmovae edx, dword [0x100a6e60]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x1003828e
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x45d0]
mov dword [ebp - 0x18], 0x19b77f7
mov dword [ebp - 0x14], 0x59a0205d
push 0x100aa080
test al, 1
jne 0x10037e7c
or eax, 1
mov dword [esi + 0x45d0], eax
mov dword [ebp - 4], 0x5e
xorps xmm0, xmm0
movlpd qword [ebp - 0x38], xmm0
mov edx, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x38]
mov byte [esi + 0x4650], 1
nop dword [eax]
mov al, byte [ebp + ecx - 0x18]
mov byte [esi + ecx + 0x4648], al
add ecx, 1
adc edx, 0
jne 0x10037e68
cmp ecx, 8
jb 0x10037e50
push 0x10087fb0
call fcn.100738a7
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x4648]
mov ecx, edi
call fcn.1006a770
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 0x10037ea7
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10070610
mov dword [ebp - 4], 0x5f
mov eax, dword [esi + 0xc40]
mov dword [ebp - 0x20], 0x71d268b9
test al, 1
jne 0x10037f29
or eax, 1
mov dword [esi + 0xc40], eax
mov byte [ebp - 4], 0x60
xorps xmm0, xmm0
movlpd qword [ebp - 0x38], xmm0
mov edx, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x38]
mov byte [esi + 0x4468], 1
nop dword [eax]
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x20]
mov byte [esi + ecx + 0x4464], al
add ecx, 1
adc edx, 0
jne 0x10037f18
cmp ecx, 4
jb 0x10037f00
push 0x10088000
call fcn.100738a7
add esp, 4
mov byte [ebp - 4], 0x5f
lea edi, [esi + 0x4464]
mov ecx, edi
call fcn.1006a7d0
mov ecx, edi
mov dword [ebp - 0x78], 0
mov dword [ebp - 0x74], 0xf
mov byte [ebp - 0x88], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10037f50
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x88]
call fcn.10070610
mov byte [ebp - 4], 0x61
mov eax, dword [esi + 0x1364]
mov dword [ebp - 0x2c], 0x189f62b0
mov dword [ebp - 0x28], 0x76bc7948
mov dword [ebp - 0x24], 0x14d061ef
mov word [ebp - 0x20], 0xf5a
test al, 1
jne 0x10037fda
or eax, 1
mov dword [esi + 0x1364], eax
mov byte [ebp - 4], 0x62
xorps xmm0, xmm0
movlpd qword [ebp - 0x38], xmm0
mov edx, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x38]
mov byte [esi + 0x1816], 1
mov al, byte [ebp + ecx - 0x2c]
mov byte [esi + ecx + 0x1808], al
add ecx, 1
adc edx, 0
jne 0x10037fc9
cmp ecx, 0xe
jb 0x10037fb1
push 0x10088050
call fcn.100738a7
add esp, 4
mov byte [ebp - 4], 0x61
lea edi, [esi + 0x1808]
mov ecx, edi
call fcn.1006a830
mov ecx, edi
mov dword [ebp - 0xa8], 0
mov dword [ebp - 0xa4], 0xf
mov byte [ebp - 0xb8], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10038007
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0xb8]
call fcn.10070610
push 0x100a6e48
lea edx, [ebp - 0xb8]
mov byte [ebp - 4], 0x63
lea ecx, [ebp - 0xe8]
call fcn.100707b0
add esp, 4
lea ecx, [ebp - 0x88]
mov byte [ebp - 4], 0x64
push ecx
push eax
push dword [ebp - 0x14]
lea ecx, [ebp - 0xd0]
call fcn.10071ef0
sub esp, 0x18
mov byte [ebp - 4], 0x65
mov ecx, esp
mov dword [ebp - 0x34], esp
lea edx, [ebp - 0xd0]
push 0x100a6ea8
call fcn.100707b0
add esp, 4
mov byte [ebp - 4], 0x66
movaps xmm0, xmmword [0x10097870]
mov eax, dword [esi + 0x22f8]
mov byte [ebp - 0x44], 0x9f
movups xmmword [ebp - 0x54], xmm0
test al, 1
jne 0x100380db
or eax, 1
mov dword [esi + 0x22f8], eax
mov byte [ebp - 4], 0x67
xorps xmm0, xmm0
movlpd qword [ebp - 0x24], xmm0
mov edx, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x24]
mov byte [esi + 0x1bc9], 1
mov al, byte [ebp + ecx - 0x54]
mov byte [esi + ecx + 0x1bb8], al
add ecx, 1
adc edx, 0
jne 0x100380ca
cmp ecx, 0x11
jb 0x100380b2
push 0x100880a0
call fcn.100738a7
add esp, 4
mov byte [ebp - 4], 0x66
lea esi, [esi + 0x1bb8]
mov ecx, esi
call fcn.1006a890
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 0x10038103
sub ecx, edi
push ecx
push esi
mov ecx, edx
call fcn.10070610
mov ecx, dword [0x100acb38]
mov eax, dword [ecx]
mov byte [ebp - 4], 0x6b
call dword [eax]
mov byte [ebp - 4], 0x6a
mov edx, dword [ebp - 0xbc]
cmp edx, 0x10
jb 0x10038161
mov ecx, dword [ebp - 0xd0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10038157
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003825a
push edx
push ecx
call fcn.100737f0
add esp, 8
mov byte [ebp - 4], 0x69
mov edx, dword [ebp - 0xd4]
mov dword [ebp - 0xc0], 0
mov dword [ebp - 0xbc], 0xf
mov byte [ebp - 0xd0], 0
cmp edx, 0x10
jb 0x100381ba
mov ecx, dword [ebp - 0xe8]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100381b0
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003825a
push edx
push ecx
call fcn.100737f0
add esp, 8
mov byte [ebp - 4], 0x68
mov edx, dword [ebp - 0xa4]
mov dword [ebp - 0xd8], 0
mov dword [ebp - 0xd4], 0xf
mov byte [ebp - 0xe8], 0
cmp edx, 0x10
jb 0x1003820f
mov ecx, dword [ebp - 0xb8]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10038205
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003825a
push edx
push ecx
call fcn.100737f0
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x74]
mov dword [ebp - 0xa8], 0
mov dword [ebp - 0xa4], 0xf
mov byte [ebp - 0xb8], 0
cmp edx, 0x10
jb 0x1003826a
mov ecx, dword [ebp - 0x88]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10038260
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x10038260
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.100737f0
add esp, 8
mov ecx, dword [0x100a8edc]
mov edx, 0x100a6e60
cmp dword [0x100a6e74], 0x10
push 0x100aa080
cmovae edx, dword [0x100a6e60]
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.10072ec9
mov esp, ebp
pop ebp
ret