Function at 0x10037630
Capabilities:
Parse pe header

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1007b03f
mov eax, dword fs:[0]
push eax
sub esp, 0x100
mov eax, dword [0x100a800c]
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 [0x100aa268]
push 0x100ad6b0
push 0
push 0
mov esi, dword [eax + ecx*4]
mov dword [ebp - 0x1c], 0xc50e70d3
mov eax, dword [esi + 0x10a8]
test al, 1
jne 0x100376dc
or eax, 1
mov dword [esi + 0x10a8], 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 + 0x2b60], 1
nop dword [eax]
mov al, byte [ebp + ecx - 0x1c]
mov byte [ecx + esi + 0x2b5c], al
add ecx, 1
adc edx, 0
jne 0x100376c8
cmp ecx, 4
jb 0x100376b0
push 0x1008aee0
call fcn.10074906
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x2b5c]
mov ecx, edi
call fcn.1006d2c0
mov ecx, edi
mov dword [ebp - 0xac], 0
mov dword [ebp - 0x9c], 0
mov dword [ebp - 0x98], 0xf
mov byte [ebp - 0xac], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10037713
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0xac]
call fcn.10071350
mov dword [ebp - 4], 1
movaps xmm0, xmmword [0x1009a400]
mov eax, dword [esi + 0x2d08]
mov byte [ebp - 0x74], 0xf5
movups xmmword [ebp - 0x94], xmm0
movaps xmm0, xmmword [0x1009a260]
movups xmmword [ebp - 0x84], xmm0
test al, 1
jne 0x100377ac
or eax, 1
mov dword [esi + 0x2d08], 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 + 0x43bd], 1
nop dword [eax]
mov al, byte [ebp + ecx - 0x94]
mov byte [ecx + esi + 0x439c], al
add ecx, 1
adc edx, 0
jne 0x1003779b
cmp ecx, 0x21
jb 0x10037780
push 0x1008af30
call fcn.10074906
add esp, 4
mov byte [ebp - 4], 1
lea edi, [esi + 0x439c]
mov ecx, edi
call fcn.1006d320
mov ecx, edi
mov dword [ebp - 0x4c], 0
mov dword [ebp - 0x3c], 0
mov dword [ebp - 0x38], 0xf
mov byte [ebp - 0x4c], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100377d7
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x4c]
call fcn.10071350
push 0x100a9494
lea edx, [ebp - 0x4c]
mov byte [ebp - 4], 3
lea ecx, [ebp - 0xdc]
call fcn.100714f0
add esp, 4
lea ecx, [ebp - 0xac]
mov byte [ebp - 4], 4
push ecx
push eax
push dword [ebp - 0x1c]
lea ecx, [ebp - 0xc4]
call fcn.10072f30
sub esp, 0x18
mov byte [ebp - 4], 5
mov ecx, esp
mov dword [ebp - 0x1c], esp
lea edx, [ebp - 0xc4]
push 0x100a98c8
call fcn.100714f0
add esp, 4
mov byte [ebp - 4], 6
movaps xmm0, xmmword [0x1009a9d0]
mov eax, dword [esi + 0x36c4]
mov word [ebp - 0x24], 0x1b8f
movups xmmword [ebp - 0x34], xmm0
test al, 1
jne 0x100378a9
or eax, 1
mov dword [esi + 0x36c4], 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 + 0x4342], 1
nop
mov al, byte [ebp + ecx - 0x34]
mov byte [ecx + esi + 0x4330], al
add ecx, 1
adc edx, 0
jne 0x10037898
cmp ecx, 0x12
jb 0x10037880
push 0x1008af80
call fcn.10074906
add esp, 4
mov byte [ebp - 4], 6
lea edi, [esi + 0x4330]
mov ecx, edi
call fcn.1006d380
sub esp, 0x18
mov ecx, edi
mov edx, esp
lea ebx, [ecx + 1]
mov dword [edx], 0
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0xf
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100378d4
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10071350
mov ecx, dword [0x100b0610]
mov eax, dword [ecx]
mov byte [ebp - 4], 5
call dword [eax + 4]
mov byte [ebp - 4], 4
mov edx, dword [ebp - 0xb0]
cmp edx, 0x10
jb 0x10037933
mov ecx, dword [ebp - 0xc4]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10037929
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10037a20
push edx
push ecx
call fcn.1007484f
add esp, 8
mov byte [ebp - 4], 3
mov edx, dword [ebp - 0xc8]
mov dword [ebp - 0xb4], 0
mov dword [ebp - 0xb0], 0xf
mov byte [ebp - 0xc4], 0
cmp edx, 0x10
jb 0x1003798c
mov ecx, dword [ebp - 0xdc]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10037982
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10037a20
push edx
push ecx
call fcn.1007484f
add esp, 8
mov byte [ebp - 4], 1
mov edx, dword [ebp - 0x38]
mov dword [ebp - 0xcc], 0
mov dword [ebp - 0xc8], 0xf
mov byte [ebp - 0xdc], 0
cmp edx, 0x10
jb 0x100379db
mov ecx, dword [ebp - 0x4c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100379d1
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10037a20
push edx
push ecx
call fcn.1007484f
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x98]
mov dword [ebp - 0x3c], 0
mov dword [ebp - 0x38], 0xf
mov byte [ebp - 0x4c], 0
cmp edx, 0x10
jb 0x10037a30
mov ecx, dword [ebp - 0xac]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10037a26
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x10037a26
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.1007484f
add esp, 8
mov ecx, dword [0x100ac51c]
mov edx, 0x100a9880
cmp dword [0x100a9894], 0x10
push 0x100ad6b0
cmovae edx, dword [0x100a9880]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x10039ed9
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x479c]
mov dword [ebp - 0x1c], 0xbfd0e699
push 0x100ad6b0
push 0
push 0
test al, 1
jne 0x10037adc
or eax, 1
mov dword [esi + 0x479c], 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 + 0x2a30], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x1c]
mov byte [esi + ecx + 0x2a2c], al
add ecx, 1
adc edx, 0
jne 0x10037ac8
cmp ecx, 4
jb 0x10037ab0
push 0x1008adf0
call fcn.10074906
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x2a2c]
mov ecx, edi
call fcn.1006d1a0
mov ecx, edi
mov dword [ebp - 0xc4], 0
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 0x10037b13
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0xc4]
call fcn.10071350
mov dword [ebp - 4], 9
movaps xmm0, xmmword [0x10099940]
mov eax, dword [esi + 0x263c]
mov byte [ebp - 0x74], 0xbf
movups xmmword [ebp - 0x94], xmm0
movaps xmm0, xmmword [0x10099780]
movups xmmword [ebp - 0x84], xmm0
test al, 1
jne 0x10037bac
or eax, 1
mov dword [esi + 0x263c], 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 + 0x539], 1
nop dword [eax]
mov al, byte [ebp + ecx - 0x94]
mov byte [ecx + esi + 0x518], al
add ecx, 1
adc edx, 0
jne 0x10037b9b
cmp ecx, 0x21
jb 0x10037b80
push 0x1008ae40
call fcn.10074906
add esp, 4
mov byte [ebp - 4], 9
lea edi, [esi + 0x518]
mov ecx, edi
call fcn.1006d200
mov ecx, edi
mov dword [ebp - 0xac], 0
mov dword [ebp - 0x9c], 0
mov dword [ebp - 0x98], 0xf
mov byte [ebp - 0xac], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10037be3
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0xac]
call fcn.10071350
push 0x100a9680
lea edx, [ebp - 0xac]
mov byte [ebp - 4], 0xb
lea ecx, [ebp - 0x68]
call fcn.100714f0
add esp, 4
lea ecx, [ebp - 0xc4]
mov byte [ebp - 4], 0xc
push ecx
push eax
push dword [ebp - 0x26]
lea ecx, [ebp - 0xdc]
call fcn.10072f30
sub esp, 0x18
mov byte [ebp - 4], 0xd
mov ecx, esp
mov dword [ebp - 0x28], esp
lea edx, [ebp - 0xdc]
push 0x100a98c8
call fcn.100714f0
add esp, 4
mov byte [ebp - 4], 0xe
movaps xmm0, xmmword [0x10099f60]
mov eax, dword [esi + 0x36c0]
mov word [ebp - 0x38], 0x8dc5
movups xmmword [ebp - 0x48], xmm0
test al, 1
jne 0x10037cb9
or eax, 1
mov dword [esi + 0x36c0], 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 + 0x99a], 1
nop dword [eax]
mov al, byte [ebp + ecx - 0x48]
mov byte [ecx + esi + 0x988], al
add ecx, 1
adc edx, 0
jne 0x10037ca8
cmp ecx, 0x12
jb 0x10037c90
push 0x1008ae90
call fcn.10074906
add esp, 4
mov byte [ebp - 4], 0xe
lea edi, [esi + 0x988]
mov ecx, edi
call fcn.1006d260
sub esp, 0x18
mov ecx, edi
mov edx, esp
lea ebx, [ecx + 1]
mov dword [edx], 0
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0xf
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10037ce4
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10071350
mov ecx, dword [0x100b0610]
mov eax, dword [ecx]
mov byte [ebp - 4], 0xd
call dword [eax + 4]
mov byte [ebp - 4], 0xc
mov edx, dword [ebp - 0xc8]
cmp edx, 0x10
jb 0x10037d43
mov ecx, dword [ebp - 0xdc]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10037d39
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10037e30
push edx
push ecx
call fcn.1007484f
add esp, 8
mov byte [ebp - 4], 0xb
mov edx, dword [ebp - 0x54]
mov dword [ebp - 0xcc], 0
mov dword [ebp - 0xc8], 0xf
mov byte [ebp - 0xdc], 0
cmp edx, 0x10
jb 0x10037d96
mov ecx, dword [ebp - 0x68]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10037d8c
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10037e30
push edx
push ecx
call fcn.1007484f
add esp, 8
mov byte [ebp - 4], 9
mov edx, dword [ebp - 0x98]
mov dword [ebp - 0x58], 0
mov dword [ebp - 0x54], 0xf
mov byte [ebp - 0x68], 0
cmp edx, 0x10
jb 0x10037de2
mov ecx, dword [ebp - 0xac]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10037dd8
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10037e30
push edx
push ecx
call fcn.1007484f
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0xb0]
mov dword [ebp - 0x9c], 0
mov dword [ebp - 0x98], 0xf
mov byte [ebp - 0xac], 0
cmp edx, 0x10
jb 0x10037e40
mov ecx, dword [ebp - 0xc4]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10037e36
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x10037e36
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.1007484f
add esp, 8
mov ecx, dword [0x100ac51c]
mov edx, 0x100a9880
cmp dword [0x100a9894], 0x10
push 0x100ad6b0
cmovae edx, dword [0x100a9880]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x10039ed9
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x784]
mov dword [ebp - 0x1c], 0x17969057
push 0x100ad6b0
push 0
push 0
test al, 1
jne 0x10037eec
or eax, 1
mov dword [esi + 0x784], 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 + 0x2f18], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x1c]
mov byte [ecx + esi + 0x2f14], al
add ecx, 1
adc edx, 0
jne 0x10037ed8
cmp ecx, 4
jb 0x10037ec0
push 0x1008ad00
call fcn.10074906
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x2f14]
mov ecx, edi
call fcn.1006d080
mov ecx, edi
mov dword [ebp - 0xc4], 0
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 0x10037f23
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0xc4]
call fcn.10071350
mov dword [ebp - 4], 0x11
movaps xmm0, xmmword [0x1009a200]
mov eax, dword [esi + 0x47b8]
mov byte [ebp - 0x74], 0x71
movups xmmword [ebp - 0x94], xmm0
movaps xmm0, xmmword [str._aG_j_]
movups xmmword [ebp - 0x84], xmm0
test al, 1
jne 0x10037fbc
or eax, 1
mov dword [esi + 0x47b8], 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 + 0x881], 1
nop dword [eax]
mov al, byte [ebp + ecx - 0x94]
mov byte [esi + ecx + 0x860], al
add ecx, 1
adc edx, 0
jne 0x10037fab
cmp ecx, 0x21
jb 0x10037f90
push 0x1008ad50
call fcn.10074906
add esp, 4
mov byte [ebp - 4], 0x11
lea edi, [esi + 0x860]
mov ecx, edi
call fcn.1006d0e0
mov ecx, edi
mov dword [ebp - 0xac], 0
mov dword [ebp - 0x9c], 0
mov dword [ebp - 0x98], 0xf
mov byte [ebp - 0xac], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10037ff3
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0xac]
call fcn.10071350
push 0x100a9868
lea edx, [ebp - 0xac]
mov byte [ebp - 4], 0x13
lea ecx, [ebp - 0x68]
call fcn.100714f0
add esp, 4
lea ecx, [ebp - 0xc4]
mov byte [ebp - 4], 0x14
push ecx
push eax
push dword [ebp - 0x26]
lea ecx, [ebp - 0xdc]
call fcn.10072f30
sub esp, 0x18
mov byte [ebp - 4], 0x15
mov ecx, esp
mov dword [ebp - 0x28], esp
lea edx, [ebp - 0xdc]
push 0x100a98c8
call fcn.100714f0
add esp, 4
mov byte [ebp - 4], 0x16
movaps xmm0, xmmword [0x1009ab30]
mov eax, dword [esi + 0x3e3c]
mov word [ebp - 0x38], 0xfb0b
movups xmmword [ebp - 0x48], xmm0
test al, 1
jne 0x100380c9
or eax, 1
mov dword [esi + 0x3e3c], 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 + 0x40c6], 1
nop dword [eax]
mov al, byte [ebp + ecx - 0x48]
mov byte [esi + ecx + 0x40b4], al
add ecx, 1
adc edx, 0
jne 0x100380b8
cmp ecx, 0x12
jb 0x100380a0
push 0x1008ada0
call fcn.10074906
add esp, 4
mov byte [ebp - 4], 0x16
lea edi, [esi + 0x40b4]
mov ecx, edi
call fcn.1006d140
sub esp, 0x18
mov ecx, edi
mov edx, esp
lea ebx, [ecx + 1]
mov dword [edx], 0
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0xf
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100380f4
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10071350
mov ecx, dword [0x100b0610]
mov eax, dword [ecx]
mov byte [ebp - 4], 0x15
call dword [eax + 4]
mov byte [ebp - 4], 0x14
mov edx, dword [ebp - 0xc8]
cmp edx, 0x10
jb 0x10038153
mov ecx, dword [ebp - 0xdc]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10038149
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10038240
push edx
push ecx
call fcn.1007484f
add esp, 8
mov byte [ebp - 4], 0x13
mov edx, dword [ebp - 0x54]
mov dword [ebp - 0xcc], 0
mov dword [ebp - 0xc8], 0xf
mov byte [ebp - 0xdc], 0
cmp edx, 0x10
jb 0x100381a6
mov ecx, dword [ebp - 0x68]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003819c
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10038240
push edx
push ecx
call fcn.1007484f
add esp, 8
mov byte [ebp - 4], 0x11
mov edx, dword [ebp - 0x98]
mov dword [ebp - 0x58], 0
mov dword [ebp - 0x54], 0xf
mov byte [ebp - 0x68], 0
cmp edx, 0x10
jb 0x100381f2
mov ecx, dword [ebp - 0xac]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100381e8
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10038240
push edx
push ecx
call fcn.1007484f
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0xb0]
mov dword [ebp - 0x9c], 0
mov dword [ebp - 0x98], 0xf
mov byte [ebp - 0xac], 0
cmp edx, 0x10
jb 0x10038250
mov ecx, dword [ebp - 0xc4]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10038246
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x10038246
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.1007484f
add esp, 8
mov ecx, dword [0x100ac51c]
mov edx, 0x100a9880
cmp dword [0x100a9894], 0x10
push 0x100ad6b0
cmovae edx, dword [0x100a9880]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x10039ed9
mov eax, dword [esi + 0x1070]
mov dword [ebp - 0x2c], 0x5b457581
mov dword [ebp - 0x28], 0x94720fcc
mov byte [ebp - 0x24], 0xe9
push 0x100ad6b0
test al, 1
jne 0x100382ee
or eax, 1
mov dword [esi + 0x1070], 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 + 0x2901], 1
mov al, byte [ebp + ecx - 0x2c]
mov byte [esi + ecx + 0x28f8], al
add ecx, 1
adc edx, 0
jne 0x100382da
cmp ecx, 9
jb 0x100382c2
push 0x1008abc0
call fcn.10074906
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x28f8]
mov ecx, edi
call fcn.1006cf00
sub esp, 0x18
mov ecx, edi
mov edx, esp
mov dword [ebp - 0x28], esp
lea ebx, [ecx + 1]
mov dword [edx], 0
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0xf
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10038320
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10071350
mov dword [ebp - 4], 0x19
mov eax, dword [esi + 0x3f84]
mov dword [ebp - 0x1c], 0x2b0c6acf
test al, 1
jne 0x10038399
or eax, 1
mov dword [esi + 0x3f84], 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 + 0xcc0], 1
nop dword [eax]
mov al, byte [ebp + ecx - 0x1c]
mov byte [esi + ecx + 0xcbc], al
add ecx, 1
adc edx, 0
jne 0x10038388
cmp ecx, 4
jb 0x10038370
push 0x1008ac10
call fcn.10074906
add esp, 4
mov byte [ebp - 4], 0x19
lea edi, [esi + 0xcbc]
mov ecx, edi
call fcn.1006cf60
mov ecx, edi
mov dword [ebp - 0xc4], 0
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 0x100383d0
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0xc4]
call fcn.10071350
mov byte [ebp - 4], 0x1b
movaps xmm0, xmmword [0x1009a4c0]
mov eax, dword [esi + 0x35c0]
mov byte [ebp - 0x74], 0xe9
movups xmmword [ebp - 0x94], xmm0
movaps xmm0, xmmword [0x1009a2c0]
movups xmmword [ebp - 0x84], xmm0
test al, 1
jne 0x1003846c
or eax, 1
mov dword [esi + 0x35c0], 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 + 0x2b09], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x94]
mov byte [esi + ecx + 0x2ae8], al
add ecx, 1
adc edx, 0
jne 0x1003845b
cmp ecx, 0x21
jb 0x10038440
push 0x1008ac60
call fcn.10074906
add esp, 4
mov byte [ebp - 4], 0x1b
lea edi, [esi + 0x2ae8]
mov ecx, edi
call fcn.1006cfc0
mov ecx, edi
mov dword [ebp - 0xac], 0
mov dword [ebp - 0x9c], 0
mov dword [ebp - 0x98], 0xf
mov byte [ebp - 0xac], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100384a3
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0xac]
call fcn.10071350
push 0x100a9494
lea edx, [ebp - 0xac]
mov byte [ebp - 4], 0x1d
lea ecx, [ebp - 0x68]
call fcn.100714f0
add esp, 4
lea ecx, [ebp - 0xc4]
mov byte [ebp - 4], 0x1e
push ecx
push eax
push dword [ebp - 0x26]
lea ecx, [ebp - 0xdc]
call fcn.10072f30
sub esp, 0x18
mov byte [ebp - 4], 0x1f
mov ecx, esp
mov dword [ebp - 0x1c], esp
lea edx, [ebp - 0xdc]
push 0x100a98c8
call fcn.100714f0
add esp, 4
mov byte [ebp - 4], 0x20
movaps xmm0, xmmword [0x1009a970]
mov eax, dword [esi + 0x3740]
mov word [ebp - 0x38], 0x193
movups xmmword [ebp - 0x48], xmm0
test al, 1
jne 0x10038579
or eax, 1
mov dword [esi + 0x3740], 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 + 0x46c6], 1
nop dword [eax]
mov al, byte [ebp + ecx - 0x48]
mov byte [esi + ecx + 0x46b4], al
add ecx, 1
adc edx, 0
jne 0x10038568
cmp ecx, 0x12
jb 0x10038550
push 0x1008acb0
call fcn.10074906
add esp, 4
mov byte [ebp - 4], 0x20
lea edi, [esi + 0x46b4]
mov ecx, edi
call fcn.1006d020
sub esp, 0x18
mov ecx, edi
mov edx, esp
lea ebx, [ecx + 1]
mov dword [edx], 0
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0xf
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100385a4
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10071350
mov ecx, dword [0x100b0610]
mov eax, dword [ecx]
mov byte [ebp - 4], 0x25
call dword [eax]
mov byte [ebp - 4], 0x24
mov edx, dword [ebp - 0xc8]
cmp edx, 0x10
jb 0x10038602
mov ecx, dword [ebp - 0xdc]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100385f8
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100386ef
push edx
push ecx
call fcn.1007484f
add esp, 8
mov byte [ebp - 4], 0x23
mov edx, dword [ebp - 0x54]
mov dword [ebp - 0xcc], 0
mov dword [ebp - 0xc8], 0xf
mov byte [ebp - 0xdc], 0
cmp edx, 0x10
jb 0x10038655
mov ecx, dword [ebp - 0x68]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003864b
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100386ef
push edx
push ecx
call fcn.1007484f
add esp, 8
mov byte [ebp - 4], 0x22
mov edx, dword [ebp - 0x98]
mov dword [ebp - 0x58], 0
mov dword [ebp - 0x54], 0xf
mov byte [ebp - 0x68], 0
cmp edx, 0x10
jb 0x100386a1
mov ecx, dword [ebp - 0xac]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10038697
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100386ef
push edx
push ecx
call fcn.1007484f
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0xb0]
mov dword [ebp - 0x9c], 0
mov dword [ebp - 0x98], 0xf
mov byte [ebp - 0xac], 0
cmp edx, 0x10
jb 0x100386ff
mov ecx, dword [ebp - 0xc4]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100386f5
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x100386f5
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.1007484f
add esp, 8
mov ecx, dword [0x100ac51c]
mov edx, 0x100a9880
cmp dword [0x100a9894], 0x10
push 0x100ad6b0
cmovae edx, dword [0x100a9880]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x10039ed9
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x20f0]
mov dword [ebp - 0x2c], 0x7d4be557
mov dword [ebp - 0x28], 0x38b87bce
mov byte [ebp - 0x24], 0x3f
push 0x100ad6b0
test al, 1
jne 0x100387ac
or eax, 1
mov dword [esi + 0x20f0], 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 + 0x2add], 1
nop dword [eax]
mov al, byte [ebp + ecx - 0x2c]
mov byte [ecx + esi + 0x2ad4], al
add ecx, 1
adc edx, 0
jne 0x10038798
cmp ecx, 9
jb 0x10038780
push 0x1008aa80
call fcn.10074906
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x2ad4]
mov ecx, edi
call fcn.1006cd80
sub esp, 0x18
mov ecx, edi
mov edx, esp
mov dword [ebp - 0x14], esp
lea ebx, [ecx + 1]
mov dword [edx], 0
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0xf
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100387e0
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10071350
mov dword [ebp - 4], 0x27
mov eax, dword [esi + 0x32e0]
mov dword [ebp - 0x1c], 0xd02fa19
test al, 1
jne 0x10038859
or eax, 1
mov dword [esi + 0x32e0], eax
mov byte [ebp - 4], 0x28
xorps xmm0, xmm0
movlpd qword [ebp - 0x2c], xmm0
mov edx, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x2c]
mov byte [esi + 0x968], 1
nop dword [eax]
mov al, byte [ebp + ecx - 0x1c]
mov byte [ecx + esi + 0x964], al
add ecx, 1
adc edx, 0
jne 0x10038848
cmp ecx, 4
jb 0x10038830
push 0x1008aad0
call fcn.10074906
add esp, 4
mov byte [ebp - 4], 0x27
lea edi, [esi + 0x964]
mov ecx, edi
call fcn.1006cde0
mov ecx, edi
mov dword [ebp - 0xc4], 0
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 0x10038890
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0xc4]
call fcn.10071350
mov byte [ebp - 4], 0x29
movaps xmm0, xmmword [0x10099a00]
mov eax, dword [esi + 0x3ed8]
mov byte [ebp - 0x74], 0x3f
movups xmmword [ebp - 0x94], xmm0
movaps xmm0, xmmword [0x100998b0]
movups xmmword [ebp - 0x84], xmm0
test al, 1
jne 0x1003892c
or eax, 1
mov dword [esi + 0x3ed8], eax
mov byte [ebp - 4], 0x2a
xorps xmm0, xmm0
movlpd qword [ebp - 0x2c], xmm0
mov edx, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x2c]
mov byte [esi + 0x1e8d], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x94]
mov byte [ecx + esi + 0x1e6c], al
add ecx, 1
adc edx, 0
jne 0x1003891b
cmp ecx, 0x21
jb 0x10038900
push 0x1008ab20
call fcn.10074906
add esp, 4
mov byte [ebp - 4], 0x29
lea edi, [esi + 0x1e6c]
mov ecx, edi
call fcn.1006ce40
mov ecx, edi
mov dword [ebp - 0xac], 0
mov dword [ebp - 0x9c], 0
mov dword [ebp - 0x98], 0xf
mov byte [ebp - 0xac], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10038963
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0xac]
call fcn.10071350
push 0x100a9680
lea edx, [ebp - 0xac]
mov byte [ebp - 4], 0x2b
lea ecx, [ebp - 0x68]
call fcn.100714f0
add esp, 4
lea ecx, [ebp - 0xc4]
mov byte [ebp - 4], 0x2c
push ecx
push eax
push dword [ebp - 0x14]
lea ecx, [ebp - 0xdc]
call fcn.10072f30
sub esp, 0x18
mov byte [ebp - 4], 0x2d
mov ecx, esp
mov dword [ebp - 0x28], esp
lea edx, [ebp - 0xdc]
push 0x100a98c8
call fcn.100714f0
add esp, 4
mov byte [ebp - 4], 0x2e
movaps xmm0, xmmword [0x10099fe0]
mov eax, dword [esi + 0x2a64]
mov word [ebp - 0x38], 0x9145
movups xmmword [ebp - 0x48], xmm0
test al, 1
jne 0x10038a39
or eax, 1
mov dword [esi + 0x2a64], 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 + 0x474e], 1
nop dword [eax]
mov al, byte [ebp + ecx - 0x48]
mov byte [esi + ecx + 0x473c], al
add ecx, 1
adc edx, 0
jne 0x10038a28
cmp ecx, 0x12
jb 0x10038a10
push 0x1008ab70
call fcn.10074906
add esp, 4
mov byte [ebp - 4], 0x2e
lea edi, [esi + 0x473c]
mov ecx, edi
call fcn.1006cea0
sub esp, 0x18
mov ecx, edi
mov edx, esp
lea ebx, [ecx + 1]
mov dword [edx], 0
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0xf
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10038a64
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10071350
mov ecx, dword [0x100b0610]
mov eax, dword [ecx]
mov byte [ebp - 4], 0x33
call dword [eax]
mov byte [ebp - 4], 0x32
mov edx, dword [ebp - 0xc8]
cmp edx, 0x10
jb 0x10038ac2
mov ecx, dword [ebp - 0xdc]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10038ab8
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10038baf
push edx
push ecx
call fcn.1007484f
add esp, 8
mov byte [ebp - 4], 0x31
mov edx, dword [ebp - 0x54]
mov dword [ebp - 0xcc], 0
mov dword [ebp - 0xc8], 0xf
mov byte [ebp - 0xdc], 0
cmp edx, 0x10
jb 0x10038b15
mov ecx, dword [ebp - 0x68]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10038b0b
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10038baf
push edx
push ecx
call fcn.1007484f
add esp, 8
mov byte [ebp - 4], 0x30
mov edx, dword [ebp - 0x98]
mov dword [ebp - 0x58], 0
mov dword [ebp - 0x54], 0xf
mov byte [ebp - 0x68], 0
cmp edx, 0x10
jb 0x10038b61
mov ecx, dword [ebp - 0xac]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10038b57
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10038baf
push edx
push ecx
call fcn.1007484f
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0xb0]
mov dword [ebp - 0x9c], 0
mov dword [ebp - 0x98], 0xf
mov byte [ebp - 0xac], 0
cmp edx, 0x10
jb 0x10038bbf
mov ecx, dword [ebp - 0xc4]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10038bb5
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x10038bb5
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.1007484f
add esp, 8
mov ecx, dword [0x100ac51c]
mov edx, 0x100a9880
cmp dword [0x100a9894], 0x10
push 0x100ad6b0
cmovae edx, dword [0x100a9880]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x10039ed9
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0xeac]
mov dword [ebp - 0x2c], 0x712bfd3f
mov dword [ebp - 0x28], 0x722ab9de
mov byte [ebp - 0x24], 0x57
push 0x100ad6b0
test al, 1
jne 0x10038c6c
or eax, 1
mov dword [esi + 0xeac], 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 + 0x511], 1
nop dword [eax]
mov al, byte [ebp + ecx - 0x2c]
mov byte [esi + ecx + 0x508], al
add ecx, 1
adc edx, 0
jne 0x10038c58
cmp ecx, 9
jb 0x10038c40
push 0x1008a940
call fcn.10074906
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x508]
mov ecx, edi
call fcn.1006cc00
sub esp, 0x18
mov ecx, edi
mov edx, esp
mov dword [ebp - 0x14], esp
lea ebx, [ecx + 1]
mov dword [edx], 0
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0xf
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10038ca0
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10071350
mov dword [ebp - 4], 0x35
mov eax, dword [esi + 0x2180]
mov dword [ebp - 0x1c], 0x162e271
test al, 1
jne 0x10038d19
or eax, 1
mov dword [esi + 0x2180], eax
mov byte [ebp - 4], 0x36
xorps xmm0, xmm0
movlpd qword [ebp - 0x2c], xmm0
mov edx, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x2c]
mov byte [esi + 0x328], 1
nop dword [eax]
mov al, byte [ebp + ecx - 0x1c]
mov byte [esi + ecx + 0x324], al
add ecx, 1
adc edx, 0
jne 0x10038d08
cmp ecx, 4
jb 0x10038cf0
push 0x1008a990
call fcn.10074906
add esp, 4
mov byte [ebp - 4], 0x35
lea edi, [esi + 0x324]
mov ecx, edi
call fcn.1006cc60
mov ecx, edi
mov dword [ebp - 0xc4], 0
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 0x10038d50
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0xc4]
call fcn.10071350
mov byte [ebp - 4], 0x37
movaps xmm0, xmmword [0x1009a090]
mov eax, dword [esi + 0x2868]
mov byte [ebp - 0x74], 0x57
movups xmmword [ebp - 0x94], xmm0
movaps xmm0, xmmword [0x10099ea0]
movups xmmword [ebp - 0x84], xmm0
test al, 1
jne 0x10038dec
or eax, 1
mov dword [esi + 0x2868], eax
mov byte [ebp - 4], 0x38
xorps xmm0, xmm0
movlpd qword [ebp - 0x2c], xmm0
mov edx, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x2c]
mov byte [esi + 0x1311], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x94]
mov byte [esi + ecx + 0x12f0], al
add ecx, 1
adc edx, 0
jne 0x10038ddb
cmp ecx, 0x21
jb 0x10038dc0
push 0x1008a9e0
call fcn.10074906
add esp, 4
mov byte [ebp - 4], 0x37
lea edi, [esi + 0x12f0]
mov ecx, edi
call fcn.1006ccc0
mov ecx, edi
mov dword [ebp - 0xac], 0
mov dword [ebp - 0x9c], 0
mov dword [ebp - 0x98], 0xf
mov byte [ebp - 0xac], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10038e23
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0xac]
call fcn.10071350
push 0x100a9868
lea edx, [ebp - 0xac]
mov byte [ebp - 4], 0x39
lea ecx, [ebp - 0x68]
call fcn.100714f0
add esp, 4
lea ecx, [ebp - 0xc4]
mov byte [ebp - 4], 0x3a
push ecx
push eax
push dword [ebp - 0x14]
lea ecx, [ebp - 0xdc]
call fcn.10072f30
sub esp, 0x18
mov byte [ebp - 4], 0x3b
mov ecx, esp
mov dword [ebp - 0x28], esp
lea edx, [ebp - 0xdc]
push 0x100a98c8
call fcn.100714f0
add esp, 4
mov byte [ebp - 4], 0x3c
movaps xmm0, xmmword [0x100997f0]
mov eax, dword [esi + 0x30bc]
mov word [ebp - 0x38], 0x892d
movups xmmword [ebp - 0x48], xmm0
test al, 1
jne 0x10038ef9
or eax, 1
mov dword [esi + 0x30bc], 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 + 0xfbe], 1
nop dword [eax]
mov al, byte [ebp + ecx - 0x48]
mov byte [esi + ecx + 0xfac], al
add ecx, 1
adc edx, 0
jne 0x10038ee8
cmp ecx, 0x12
jb 0x10038ed0
push 0x1008aa30
call fcn.10074906
add esp, 4
mov byte [ebp - 4], 0x3c
lea edi, [esi + 0xfac]
mov ecx, edi
call fcn.1006cd20
sub esp, 0x18
mov ecx, edi
mov edx, esp
lea ebx, [ecx + 1]
mov dword [edx], 0
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0xf
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10038f24
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10071350
mov ecx, dword [0x100b0610]
mov eax, dword [ecx]
mov byte [ebp - 4], 0x41
call dword [eax]
mov byte [ebp - 4], 0x40
mov edx, dword [ebp - 0xc8]
cmp edx, 0x10
jb 0x10038f82
mov ecx, dword [ebp - 0xdc]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10038f78
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003906f
push edx
push ecx
call fcn.1007484f
add esp, 8
mov byte [ebp - 4], 0x3f
mov edx, dword [ebp - 0x54]
mov dword [ebp - 0xcc], 0
mov dword [ebp - 0xc8], 0xf
mov byte [ebp - 0xdc], 0
cmp edx, 0x10
jb 0x10038fd5
mov ecx, dword [ebp - 0x68]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10038fcb
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003906f
push edx
push ecx
call fcn.1007484f
add esp, 8
mov byte [ebp - 4], 0x3e
mov edx, dword [ebp - 0x98]
mov dword [ebp - 0x58], 0
mov dword [ebp - 0x54], 0xf
mov byte [ebp - 0x68], 0
cmp edx, 0x10
jb 0x10039021
mov ecx, dword [ebp - 0xac]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10039017
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003906f
push edx
push ecx
call fcn.1007484f
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0xb0]
mov dword [ebp - 0x9c], 0
mov dword [ebp - 0x98], 0xf
mov byte [ebp - 0xac], 0
cmp edx, 0x10
jb 0x1003907f
mov ecx, dword [ebp - 0xc4]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10039075
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x10039075
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.1007484f
add esp, 8
mov ecx, dword [0x100ac51c]
mov edx, 0x100a9880
cmp dword [0x100a9894], 0x10
push 0x100ad6b0
cmovae edx, dword [0x100a9880]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x10039ed9
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x20f4]
mov dword [ebp - 0x18], 0x730bef6f
mov dword [ebp - 0x14], 0x2792cec9
push 0x100ad6b0
test al, 1
jne 0x1003912c
or eax, 1
mov dword [esi + 0x20f4], eax
mov dword [ebp - 4], 0x42
xorps xmm0, xmm0
movlpd qword [ebp - 0x2c], xmm0
mov edx, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x2c]
mov byte [esi + 0x108], 1
nop dword [eax + eax]
mov al, byte [ebp + ecx - 0x18]
mov byte [esi + ecx + 0x100], al
add ecx, 1
adc edx, 0
jne 0x10039118
cmp ecx, 8
jb 0x10039100
push 0x1008a800
call fcn.10074906
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x100]
mov ecx, edi
call fcn.1006ca80
sub esp, 0x18
mov ecx, edi
mov edx, esp
mov dword [ebp - 0x14], esp
lea ebx, [ecx + 1]
mov dword [edx], 0
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0xf
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10039160
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10071350
mov dword [ebp - 4], 0x43
mov eax, dword [esi + 0x40dc]
mov dword [ebp - 0x1c], 0x342f021
test al, 1
jne 0x100391d9
or eax, 1
mov dword [esi + 0x40dc], eax
mov byte [ebp - 4], 0x44
xorps xmm0, xmm0
movlpd qword [ebp - 0x2c], xmm0
mov edx, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x2c]
mov byte [esi + 0x274c], 1
nop dword [eax]
mov al, byte [ebp + ecx - 0x1c]
mov byte [esi + ecx + 0x2748], al
add ecx, 1
adc edx, 0
jne 0x100391c8
cmp ecx, 4
jb 0x100391b0
push 0x1008a850
call fcn.10074906
add esp, 4
mov byte [ebp - 4], 0x43
lea edi, [esi + 0x2748]
mov ecx, edi
call fcn.1006cae0
mov ecx, edi
mov dword [ebp - 0xc4], 0
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 0x10039210
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0xc4]
call fcn.10071350
mov byte [ebp - 4], 0x45
movaps xmm0, xmmword [0x100994c0]
mov eax, dword [esi + 0x2e44]
mov byte [ebp - 0x74], 7
movups xmmword [ebp - 0x94], xmm0
movaps xmm0, xmmword [0x100996b0]
movups xmmword [ebp - 0x84], xmm0
test al, 1
jne 0x100392ac
or eax, 1
mov dword [esi + 0x2e44], eax
mov byte [ebp - 4], 0x46
xorps xmm0, xmm0
movlpd qword [ebp - 0x2c], xmm0
mov edx, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x2c]
mov byte [esi + 0x1439], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x94]
mov byte [ecx + esi + 0x1418], al
add ecx, 1
adc edx, 0
jne 0x1003929b
cmp ecx, 0x21
jb 0x10039280
push 0x1008a8a0
call fcn.10074906
add esp, 4
mov byte [ebp - 4], 0x45
lea edi, [esi + 0x1418]
mov ecx, edi
call fcn.1006cb40
mov ecx, edi
mov dword [ebp - 0xac], 0
mov dword [ebp - 0x9c], 0
mov dword [ebp - 0x98], 0xf
mov byte [ebp - 0xac], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100392e3
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0xac]
call fcn.10071350
push 0x100a9494
lea edx, [ebp - 0xac]
mov byte [ebp - 4], 0x47
lea ecx, [ebp - 0x68]
call fcn.100714f0
add esp, 4
lea ecx, [ebp - 0xc4]
mov byte [ebp - 4], 0x48
push ecx
push eax
push dword [ebp - 0x14]
lea ecx, [ebp - 0xdc]
call fcn.10072f30
sub esp, 0x18
mov byte [ebp - 4], 0x49
mov ecx, esp
mov dword [ebp - 0x28], esp
lea edx, [ebp - 0xdc]
push 0x100a98c8
call fcn.100714f0
add esp, 4
mov byte [ebp - 4], 0x4a
movaps xmm0, xmmword [0x10099e40]
mov eax, dword [esi + 0xc78]
mov word [ebp - 0x38], 0x9b7d
movups xmmword [ebp - 0x48], xmm0
test al, 1
jne 0x100393b9
or eax, 1
mov dword [esi + 0xc78], 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 + 0x30ba], 1
nop dword [eax]
mov al, byte [ebp + ecx - 0x48]
mov byte [ecx + esi + 0x30a8], al
add ecx, 1
adc edx, 0
jne 0x100393a8
cmp ecx, 0x12
jb 0x10039390
push 0x1008a8f0
call fcn.10074906
add esp, 4
mov byte [ebp - 4], 0x4a
lea edi, [esi + 0x30a8]
mov ecx, edi
call fcn.1006cba0
sub esp, 0x18
mov ecx, edi
mov edx, esp
lea ebx, [ecx + 1]
mov dword [edx], 0
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0xf
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100393e4
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10071350
mov ecx, dword [0x100b0610]
mov eax, dword [ecx]
mov byte [ebp - 4], 0x4f
call dword [eax]
mov byte [ebp - 4], 0x4e
mov edx, dword [ebp - 0xc8]
cmp edx, 0x10
jb 0x10039442
mov ecx, dword [ebp - 0xdc]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10039438
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003952f
push edx
push ecx
call fcn.1007484f
add esp, 8
mov byte [ebp - 4], 0x4d
mov edx, dword [ebp - 0x54]
mov dword [ebp - 0xcc], 0
mov dword [ebp - 0xc8], 0xf
mov byte [ebp - 0xdc], 0
cmp edx, 0x10
jb 0x10039495
mov ecx, dword [ebp - 0x68]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003948b
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003952f
push edx
push ecx
call fcn.1007484f
add esp, 8
mov byte [ebp - 4], 0x4c
mov edx, dword [ebp - 0x98]
mov dword [ebp - 0x58], 0
mov dword [ebp - 0x54], 0xf
mov byte [ebp - 0x68], 0
cmp edx, 0x10
jb 0x100394e1
mov ecx, dword [ebp - 0xac]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100394d7
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003952f
push edx
push ecx
call fcn.1007484f
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0xb0]
mov dword [ebp - 0x9c], 0
mov dword [ebp - 0x98], 0xf
mov byte [ebp - 0xac], 0
cmp edx, 0x10
jb 0x1003953f
mov ecx, dword [ebp - 0xc4]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10039535
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x10039535
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.1007484f
add esp, 8
mov ecx, dword [0x100ac51c]
mov edx, 0x100a9880
cmp dword [0x100a9894], 0x10
push 0x100ad6b0
cmovae edx, dword [0x100a9880]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x10039ed9
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x32b0]
mov dword [ebp - 0x18], 0x6fa9af11
mov dword [ebp - 0x14], 0xb5f0f8a9
push 0x100ad6b0
test al, 1
jne 0x100395ec
or eax, 1
mov dword [esi + 0x32b0], eax
mov dword [ebp - 4], 0x50
xorps xmm0, xmm0
movlpd qword [ebp - 0x2c], xmm0
mov edx, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x2c]
mov byte [esi + 0x1888], 1
nop dword [eax + eax]
mov al, byte [ebp + ecx - 0x18]
mov byte [ecx + esi + 0x1880], al
add ecx, 1
adc edx, 0
jne 0x100395d8
cmp ecx, 8
jb 0x100395c0
push 0x1008a6c0
call fcn.10074906
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x1880]
mov ecx, edi
call fcn.1006c900
sub esp, 0x18
mov ecx, edi
mov edx, esp
mov dword [ebp - 0x14], esp
lea ebx, [ecx + 1]
mov dword [edx], 0
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0xf
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10039620
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10071350
mov dword [ebp - 4], 0x51
mov eax, dword [esi + 0x4bc]
mov dword [ebp - 0x1c], 0x1fe0b05f
test al, 1
jne 0x10039699
or eax, 1
mov dword [esi + 0x4bc], eax
mov byte [ebp - 4], 0x52
xorps xmm0, xmm0
movlpd qword [ebp - 0x2c], xmm0
mov edx, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x2c]
mov byte [esi + 0x3dc4], 1
nop dword [eax]
mov al, byte [ebp + ecx - 0x1c]
mov byte [ecx + esi + 0x3dc0], al
add ecx, 1
adc edx, 0
jne 0x10039688
cmp ecx, 4
jb 0x10039670
push 0x1008a710
call fcn.10074906
add esp, 4
mov byte [ebp - 4], 0x51
lea edi, [esi + 0x3dc0]
mov ecx, edi
call fcn.1006c960
mov ecx, edi
mov dword [ebp - 0xc4], 0
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 0x100396d0
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0xc4]
call fcn.10071350
mov byte [ebp - 4], 0x53
movaps xmm0, xmmword [0x1009a5a0]
mov eax, dword [esi + 0x149c]
mov byte [ebp - 0x74], 0x79
movups xmmword [ebp - 0x94], xmm0
movaps xmm0, xmmword [0x1009a310]
movups xmmword [ebp - 0x84], xmm0
test al, 1
jne 0x1003976c
or eax, 1
mov dword [esi + 0x149c], eax
mov byte [ebp - 4], 0x54
xorps xmm0, xmm0
movlpd qword [ebp - 0x2c], xmm0
mov edx, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x2c]
mov byte [esi + 0x4889], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x94]
mov byte [ecx + esi + 0x4868], al
add ecx, 1
adc edx, 0
jne 0x1003975b
cmp ecx, 0x21
jb 0x10039740
push 0x1008a760
call fcn.10074906
add esp, 4
mov byte [ebp - 4], 0x53
lea edi, [esi + 0x4868]
mov ecx, edi
call fcn.1006c9c0
mov ecx, edi
mov dword [ebp - 0xac], 0
mov dword [ebp - 0x9c], 0
mov dword [ebp - 0x98], 0xf
mov byte [ebp - 0xac], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100397a3
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0xac]
call fcn.10071350
push 0x100a9680
lea edx, [ebp - 0xac]
mov byte [ebp - 4], 0x55
lea ecx, [ebp - 0x68]
call fcn.100714f0
add esp, 4
lea ecx, [ebp - 0xc4]
mov byte [ebp - 4], 0x56
push ecx
push eax
push dword [ebp - 0x14]
lea ecx, [ebp - 0xdc]
call fcn.10072f30
sub esp, 0x18
mov byte [ebp - 4], 0x57
mov ecx, esp
mov dword [ebp - 0x28], esp
lea edx, [ebp - 0xdc]
push 0x100a98c8
call fcn.100714f0
add esp, 4
mov byte [ebp - 4], 0x58
movaps xmm0, xmmword [0x1009aa70]
mov eax, dword [esi + 0xbf8]
mov word [ebp - 0x38], 0xdb03
movups xmmword [ebp - 0x48], xmm0
test al, 1
jne 0x10039879
or eax, 1
mov dword [esi + 0xbf8], 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 + 0x372], 1
nop dword [eax]
mov al, byte [ebp + ecx - 0x48]
mov byte [ecx + esi + 0x360], al
add ecx, 1
adc edx, 0
jne 0x10039868
cmp ecx, 0x12
jb 0x10039850
push 0x1008a7b0
call fcn.10074906
add esp, 4
mov byte [ebp - 4], 0x58
lea edi, [esi + 0x360]
mov ecx, edi
call fcn.1006ca20
sub esp, 0x18
mov ecx, edi
mov edx, esp
lea ebx, [ecx + 1]
mov dword [edx], 0
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0xf
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100398a4
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10071350
mov ecx, dword [0x100b0610]
mov eax, dword [ecx]
mov byte [ebp - 4], 0x5d
call dword [eax]
mov byte [ebp - 4], 0x5c
mov edx, dword [ebp - 0xc8]
cmp edx, 0x10
jb 0x10039902
mov ecx, dword [ebp - 0xdc]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100398f8
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100399ef
push edx
push ecx
call fcn.1007484f
add esp, 8
mov byte [ebp - 4], 0x5b
mov edx, dword [ebp - 0x54]
mov dword [ebp - 0xcc], 0
mov dword [ebp - 0xc8], 0xf
mov byte [ebp - 0xdc], 0
cmp edx, 0x10
jb 0x10039955
mov ecx, dword [ebp - 0x68]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003994b
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100399ef
push edx
push ecx
call fcn.1007484f
add esp, 8
mov byte [ebp - 4], 0x5a
mov edx, dword [ebp - 0x98]
mov dword [ebp - 0x58], 0
mov dword [ebp - 0x54], 0xf
mov byte [ebp - 0x68], 0
cmp edx, 0x10
jb 0x100399a1
mov ecx, dword [ebp - 0xac]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10039997
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100399ef
push edx
push ecx
call fcn.1007484f
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0xb0]
mov dword [ebp - 0x9c], 0
mov dword [ebp - 0x98], 0xf
mov byte [ebp - 0xac], 0
cmp edx, 0x10
jb 0x100399ff
mov ecx, dword [ebp - 0xc4]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100399f5
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x100399f5
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.1007484f
add esp, 8
mov ecx, dword [0x100ac51c]
mov edx, 0x100a9880
cmp dword [0x100a9894], 0x10
push 0x100ad6b0
cmovae edx, dword [0x100a9880]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x10039ed9
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x3bf0]
mov dword [ebp - 0x18], 0xe323f17d
mov dword [ebp - 0x14], 0xa5fe1a25
push 0x100ad6b0
test al, 1
jne 0x10039aac
or eax, 1
mov dword [esi + 0x3bf0], eax
mov dword [ebp - 4], 0x5e
xorps xmm0, xmm0
movlpd qword [ebp - 0x2c], xmm0
mov edx, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x2c]
mov byte [esi + 0x4b90], 1
nop dword [eax + eax]
mov al, byte [ebp + ecx - 0x18]
mov byte [esi + ecx + 0x4b88], al
add ecx, 1
adc edx, 0
jne 0x10039a98
cmp ecx, 8
jb 0x10039a80
push 0x1008a580
call fcn.10074906
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x4b88]
mov ecx, edi
call fcn.1006c780
sub esp, 0x18
mov ecx, edi
mov edx, esp
mov dword [ebp - 0x14], esp
lea ebx, [ecx + 1]
mov dword [edx], 0
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0xf
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10039ae0
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10071350
mov dword [ebp - 4], 0x5f
mov eax, dword [esi + 0x1464]
mov dword [ebp - 0x1c], 0x936aee33
test al, 1
jne 0x10039b59
or eax, 1
mov dword [esi + 0x1464], eax
mov byte [ebp - 4], 0x60
xorps xmm0, xmm0
movlpd qword [ebp - 0x2c], xmm0
mov edx, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x2c]
mov byte [esi + 0x44c8], 1
nop dword [eax]
mov al, byte [ebp + ecx - 0x1c]
mov byte [esi + ecx + 0x44c4], al
add ecx, 1
adc edx, 0
jne 0x10039b48
cmp ecx, 4
jb 0x10039b30
push 0x1008a5d0
call fcn.10074906
add esp, 4
mov byte [ebp - 4], 0x5f
lea edi, [esi + 0x44c4]
mov ecx, edi
call fcn.1006c7e0
mov ecx, edi
mov dword [ebp - 0xc4], 0
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 0x10039b90
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0xc4]
call fcn.10071350
mov byte [ebp - 4], 0x61
movaps xmm0, xmmword [0x1009a340]
mov eax, dword [esi + 0x180]
mov byte [ebp - 0x50], 0x15
movups xmmword [ebp - 0x70], xmm0
movaps xmm0, xmmword [0x1009a560]
movups xmmword [ebp - 0x60], xmm0
test al, 1
jne 0x10039c19
or eax, 1
mov dword [esi + 0x180], eax
mov byte [ebp - 4], 0x62
xorps xmm0, xmm0
movlpd qword [ebp - 0x2c], xmm0
mov edx, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x2c]
mov byte [esi + 0x1cc9], 1
mov al, byte [ebp + ecx - 0x70]
mov byte [esi + ecx + 0x1ca8], al
add ecx, 1
adc edx, 0
jne 0x10039c08
cmp ecx, 0x21
jb 0x10039bf0
push 0x1008a620
call fcn.10074906
add esp, 4
mov byte [ebp - 4], 0x61
lea edi, [esi + 0x1ca8]
mov ecx, edi
call fcn.1006c840
mov ecx, edi
mov dword [ebp - 0xf4], 0
mov dword [ebp - 0xe4], 0
mov dword [ebp - 0xe0], 0xf
mov byte [ebp - 0xf4], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10039c50
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0xf4]
call fcn.10071350
push 0x100a9868
lea edx, [ebp - 0xf4]
mov byte [ebp - 4], 0x63
lea ecx, [ebp - 0x8c]
call fcn.100714f0
add esp, 4
lea ecx, [ebp - 0xc4]
mov byte [ebp - 4], 0x64
push ecx
push eax
push dword [ebp - 0x14]
lea ecx, [ebp - 0x10c]
call fcn.10072f30
sub esp, 0x18
mov byte [ebp - 4], 0x65
mov ecx, esp
mov dword [ebp - 0x28], esp
lea edx, [ebp - 0x10c]
push 0x100a98c8
call fcn.100714f0
add esp, 4
mov byte [ebp - 4], 0x66
movaps xmm0, xmmword [0x1009abf0]
mov eax, dword [esi + 0x704]
mov word [ebp - 0x38], 0x856f
movups xmmword [ebp - 0x48], xmm0
test al, 1
jne 0x10039d29
or eax, 1
mov dword [esi + 0x704], 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 + 0x4592], 1
nop dword [eax]
mov al, byte [ebp + ecx - 0x48]
mov byte [ecx + esi + 0x4580], al
add ecx, 1
adc edx, 0
jne 0x10039d18
cmp ecx, 0x12
jb 0x10039d00
push 0x1008a670
call fcn.10074906
add esp, 4
mov byte [ebp - 4], 0x66
lea esi, [esi + 0x4580]
mov ecx, esi
call fcn.1006c8a0
sub esp, 0x18
mov ecx, esi
mov edx, esp
lea edi, [ecx + 1]
mov dword [edx], 0
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0xf
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10039d54
sub ecx, edi
push ecx
push esi
mov ecx, edx
call fcn.10071350
mov ecx, dword [0x100b0610]
mov eax, dword [ecx]
mov byte [ebp - 4], 0x6b
call dword [eax]
mov byte [ebp - 4], 0x6a
mov edx, dword [ebp - 0xf8]
cmp edx, 0x10
jb 0x10039db2
mov ecx, dword [ebp - 0x10c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10039da8
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10039ea5
push edx
push ecx
call fcn.1007484f
add esp, 8
mov byte [ebp - 4], 0x69
mov edx, dword [ebp - 0x78]
mov dword [ebp - 0xfc], 0
mov dword [ebp - 0xf8], 0xf
mov byte [ebp - 0x10c], 0
cmp edx, 0x10
jb 0x10039e08
mov ecx, dword [ebp - 0x8c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10039dfe
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10039ea5
push edx
push ecx
call fcn.1007484f
add esp, 8
mov byte [ebp - 4], 0x68
mov edx, dword [ebp - 0xe0]
mov dword [ebp - 0x7c], 0
mov dword [ebp - 0x78], 0xf
mov byte [ebp - 0x8c], 0
cmp edx, 0x10
jb 0x10039e57
mov ecx, dword [ebp - 0xf4]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10039e4d
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10039ea5
push edx
push ecx
call fcn.1007484f
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0xb0]
mov dword [ebp - 0xe4], 0
mov dword [ebp - 0xe0], 0xf
mov byte [ebp - 0xf4], 0
cmp edx, 0x10
jb 0x10039eb5
mov ecx, dword [ebp - 0xc4]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10039eab
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x10039eab
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.1007484f
add esp, 8
mov ecx, dword [0x100ac51c]
mov edx, 0x100a9880
cmp dword [0x100a9894], 0x10
push 0x100ad6b0
cmovae edx, dword [0x100a9880]
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.10073f29
mov esp, ebp
pop ebp
ret