Function at 0x1003fe30
Capabilities:
Parse pe header

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1007ca24
mov eax, dword fs:[0]
push eax
sub esp, 0xe8
mov eax, dword [0x100a700c]
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 [0x100a9268]
push 0x100ac6b8
push 0
push 0
mov esi, dword [eax + ecx*4]
mov dword [ebp - 0x1c], 0x11f2a6f3
mov eax, dword [esi + 0x38c4]
test al, 1
jne 0x1003fedc
or eax, 1
mov dword [esi + 0x38c4], 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 + 0xb68], 1
nop dword [eax]
mov al, byte [ebp + ecx - 0x1c]
mov byte [esi + ecx + 0xb64], al
add ecx, 1
adc edx, 0
jne 0x1003fec8
cmp ecx, 4
jb 0x1003feb0
push 0x1008d0f0
call fcn.10074576
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0xb64]
mov ecx, edi
call fcn.1006a570
mov ecx, edi
mov dword [ebp - 0x7c], 0
mov dword [ebp - 0x6c], 0
mov dword [ebp - 0x68], 0xf
mov byte [ebp - 0x7c], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1003ff07
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x7c]
call fcn.10070f40
mov dword [ebp - 4], 1
movaps xmm0, xmmword [0x10099e20]
mov eax, dword [esi + 0x28cc]
mov dword [ebp - 0x28], 0x74f0afa5
mov word [ebp - 0x24], 0x2f70
movups xmmword [ebp - 0x38], xmm0
test al, 1
jne 0x1003ff99
or eax, 1
mov dword [esi + 0x28cc], 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 + 0xc5e], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x38]
mov byte [esi + ecx + 0xc48], al
add ecx, 1
adc edx, 0
jne 0x1003ff88
cmp ecx, 0x16
jb 0x1003ff70
push 0x1008d140
call fcn.10074576
add esp, 4
mov byte [ebp - 4], 1
lea edi, [esi + 0xc48]
mov ecx, edi
call fcn.1006a5d0
mov ecx, edi
mov dword [ebp - 0x64], 0
mov dword [ebp - 0x54], 0
mov dword [ebp - 0x50], 0xf
mov byte [ebp - 0x64], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1003ffc4
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x64]
call fcn.10070f40
push 0x100a8494
lea edx, [ebp - 0x64]
mov byte [ebp - 4], 3
lea ecx, [ebp - 0xac]
call fcn.100710e0
add esp, 4
lea ecx, [ebp - 0x7c]
mov byte [ebp - 4], 4
push ecx
push eax
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x94]
call fcn.10072ba0
sub esp, 0x18
mov byte [ebp - 4], 5
mov ecx, esp
mov dword [ebp - 0x1c], esp
lea edx, [ebp - 0x94]
push 0x100a88c8
call fcn.100710e0
add esp, 4
mov byte [ebp - 4], 6
movaps xmm0, xmmword [0x10099880]
mov eax, dword [esi + 0x40e8]
mov word [ebp - 0x3c], 0xcdaf
movups xmmword [ebp - 0x4c], xmm0
test al, 1
jne 0x10040099
or eax, 1
mov dword [esi + 0x40e8], 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 + 0x8d6], 1
nop dword [eax + eax]
mov al, byte [ebp + ecx - 0x4c]
mov byte [esi + ecx + 0x8c4], al
add ecx, 1
adc edx, 0
jne 0x10040088
cmp ecx, 0x12
jb 0x10040070
push 0x1008d190
call fcn.10074576
add esp, 4
mov byte [ebp - 4], 6
lea edi, [esi + 0x8c4]
mov ecx, edi
call fcn.1006a630
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 0x100400c4
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10070f40
mov ecx, dword [0x100b0a20]
mov eax, dword [ecx]
mov byte [ebp - 4], 5
call dword [eax + 4]
mov byte [ebp - 4], 4
mov edx, dword [ebp - 0x80]
cmp edx, 0x10
jb 0x10040120
mov ecx, dword [ebp - 0x94]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10040116
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10040204
push edx
push ecx
call fcn.100744bf
add esp, 8
mov byte [ebp - 4], 3
mov edx, dword [ebp - 0x98]
mov dword [ebp - 0x84], 0
mov dword [ebp - 0x80], 0xf
mov byte [ebp - 0x94], 0
cmp edx, 0x10
jb 0x10040176
mov ecx, dword [ebp - 0xac]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1004016c
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10040204
push edx
push ecx
call fcn.100744bf
add esp, 8
mov byte [ebp - 4], 1
mov edx, dword [ebp - 0x50]
mov dword [ebp - 0x9c], 0
mov dword [ebp - 0x98], 0xf
mov byte [ebp - 0xac], 0
cmp edx, 0x10
jb 0x100401c5
mov ecx, dword [ebp - 0x64]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100401bb
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10040204
push edx
push ecx
call fcn.100744bf
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x68]
mov dword [ebp - 0x54], 0
mov dword [ebp - 0x50], 0xf
mov byte [ebp - 0x64], 0
cmp edx, 0x10
jb 0x10040214
mov ecx, dword [ebp - 0x7c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1004020a
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x1004020a
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.100744bf
add esp, 8
mov ecx, dword [0x100ab520]
mov edx, 0x100a8880
cmp dword [0x100a8894], 0x10
push 0x100ac6b8
cmovae edx, dword [0x100a8880]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x1004255c
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x1f34]
mov dword [ebp - 0x1c], 0xedf00a35
push 0x100ac6b8
push 0
push 0
test al, 1
jne 0x100402bc
or eax, 1
mov dword [esi + 0x1f34], 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 + 0x1d40], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x1c]
mov byte [esi + ecx + 0x1d3c], al
add ecx, 1
adc edx, 0
jne 0x100402a8
cmp ecx, 4
jb 0x10040290
push 0x1008d000
call fcn.10074576
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x1d3c]
mov ecx, edi
call fcn.1006a450
mov ecx, edi
mov dword [ebp - 0x7c], 0
mov dword [ebp - 0x6c], 0
mov dword [ebp - 0x68], 0xf
mov byte [ebp - 0x7c], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100402e7
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x7c]
call fcn.10070f40
mov dword [ebp - 4], 9
movaps xmm0, xmmword [0x100988a0]
mov eax, dword [esi + 0x155c]
mov dword [ebp - 0x28], 0x88f20363
mov word [ebp - 0x24], 0xa1fa
movups xmmword [ebp - 0x38], xmm0
test al, 1
jne 0x10040379
or eax, 1
mov dword [esi + 0x155c], 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 + 0x3186], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x38]
mov byte [ecx + esi + 0x3170], al
add ecx, 1
adc edx, 0
jne 0x10040368
cmp ecx, 0x16
jb 0x10040350
push 0x1008d050
call fcn.10074576
add esp, 4
mov byte [ebp - 4], 9
lea edi, [esi + 0x3170]
mov ecx, edi
call fcn.1006a4b0
mov ecx, edi
mov dword [ebp - 0x64], 0
mov dword [ebp - 0x54], 0
mov dword [ebp - 0x50], 0xf
mov byte [ebp - 0x64], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100403a4
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x64]
call fcn.10070f40
push 0x100a8680
lea edx, [ebp - 0x64]
mov byte [ebp - 4], 0xb
lea ecx, [ebp - 0xac]
call fcn.100710e0
add esp, 4
lea ecx, [ebp - 0x7c]
mov byte [ebp - 4], 0xc
push ecx
push eax
push dword [ebp - 0x3e]
lea ecx, [ebp - 0x94]
call fcn.10072ba0
sub esp, 0x18
mov byte [ebp - 4], 0xd
mov ecx, esp
mov dword [ebp - 0x40], esp
lea edx, [ebp - 0x94]
push 0x100a88c8
call fcn.100710e0
add esp, 4
mov byte [ebp - 4], 0xe
movaps xmm0, xmmword [0x10098f00]
mov eax, dword [esi + 0x25a0]
mov word [ebp - 0x24], 0x6169
movups xmmword [ebp - 0x34], xmm0
test al, 1
jne 0x10040479
or eax, 1
mov dword [esi + 0x25a0], 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 + 0x287e], 1
nop dword [eax + eax]
mov al, byte [ebp + ecx - 0x34]
mov byte [ecx + esi + 0x286c], al
add ecx, 1
adc edx, 0
jne 0x10040468
cmp ecx, 0x12
jb 0x10040450
push 0x1008d0a0
call fcn.10074576
add esp, 4
mov byte [ebp - 4], 0xe
lea edi, [esi + 0x286c]
mov ecx, edi
call fcn.1006a510
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 0x100404a4
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10070f40
mov ecx, dword [0x100b0a20]
mov eax, dword [ecx]
mov byte [ebp - 4], 0xd
call dword [eax + 4]
mov byte [ebp - 4], 0xc
mov edx, dword [ebp - 0x80]
cmp edx, 0x10
jb 0x10040500
mov ecx, dword [ebp - 0x94]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100404f6
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100405e4
push edx
push ecx
call fcn.100744bf
add esp, 8
mov byte [ebp - 4], 0xb
mov edx, dword [ebp - 0x98]
mov dword [ebp - 0x84], 0
mov dword [ebp - 0x80], 0xf
mov byte [ebp - 0x94], 0
cmp edx, 0x10
jb 0x10040556
mov ecx, dword [ebp - 0xac]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1004054c
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100405e4
push edx
push ecx
call fcn.100744bf
add esp, 8
mov byte [ebp - 4], 9
mov edx, dword [ebp - 0x50]
mov dword [ebp - 0x9c], 0
mov dword [ebp - 0x98], 0xf
mov byte [ebp - 0xac], 0
cmp edx, 0x10
jb 0x100405a5
mov ecx, dword [ebp - 0x64]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1004059b
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100405e4
push edx
push ecx
call fcn.100744bf
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x68]
mov dword [ebp - 0x54], 0
mov dword [ebp - 0x50], 0xf
mov byte [ebp - 0x64], 0
cmp edx, 0x10
jb 0x100405f4
mov ecx, dword [ebp - 0x7c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100405ea
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x100405ea
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.100744bf
add esp, 8
mov ecx, dword [0x100ab520]
mov edx, 0x100a8880
cmp dword [0x100a8894], 0x10
push 0x100ac6b8
cmovae edx, dword [0x100a8880]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x1004255c
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x1fac]
mov dword [ebp - 0x1c], 0xe9a4f25b
push 0x100ac6b8
push 0
push 0
test al, 1
jne 0x1004069c
or eax, 1
mov dword [esi + 0x1fac], 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 + 0x2d28], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x1c]
mov byte [ecx + esi + 0x2d24], al
add ecx, 1
adc edx, 0
jne 0x10040688
cmp ecx, 4
jb 0x10040670
push 0x1008cf10
call fcn.10074576
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x2d24]
mov ecx, edi
call fcn.1006a330
mov ecx, edi
mov dword [ebp - 0x7c], 0
mov dword [ebp - 0x6c], 0
mov dword [ebp - 0x68], 0xf
mov byte [ebp - 0x7c], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100406c7
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x7c]
call fcn.10070f40
mov dword [ebp - 4], 0x11
movaps xmm0, xmmword [0x10098980]
mov eax, dword [esi + 0x404]
mov dword [ebp - 0x28], 0x8ca6fb0d
mov word [ebp - 0x24], 0x6f8c
movups xmmword [ebp - 0x38], xmm0
test al, 1
jne 0x10040759
or eax, 1
mov dword [esi + 0x404], 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 + 0xeae], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x38]
mov byte [ecx + esi + 0xe98], al
add ecx, 1
adc edx, 0
jne 0x10040748
cmp ecx, 0x16
jb 0x10040730
push 0x1008cf60
call fcn.10074576
add esp, 4
mov byte [ebp - 4], 0x11
lea edi, [esi + 0xe98]
mov ecx, edi
call fcn.1006a390
mov ecx, edi
mov dword [ebp - 0x64], 0
mov dword [ebp - 0x54], 0
mov dword [ebp - 0x50], 0xf
mov byte [ebp - 0x64], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10040784
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x64]
call fcn.10070f40
push 0x100a8868
lea edx, [ebp - 0x64]
mov byte [ebp - 4], 0x13
lea ecx, [ebp - 0xac]
call fcn.100710e0
add esp, 4
lea ecx, [ebp - 0x7c]
mov byte [ebp - 4], 0x14
push ecx
push eax
push dword [ebp - 0x3e]
lea ecx, [ebp - 0x94]
call fcn.10072ba0
sub esp, 0x18
mov byte [ebp - 4], 0x15
mov ecx, esp
mov dword [ebp - 0x40], esp
lea edx, [ebp - 0x94]
push 0x100a88c8
call fcn.100710e0
add esp, 4
mov byte [ebp - 4], 0x16
movaps xmm0, xmmword [0x10098fd0]
mov eax, dword [esi + 0xfa4]
mov word [ebp - 0x24], 0x9907
movups xmmword [ebp - 0x34], xmm0
test al, 1
jne 0x10040859
or eax, 1
mov dword [esi + 0xfa4], 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 + 0xfa2], 1
nop dword [eax + eax]
mov al, byte [ebp + ecx - 0x34]
mov byte [ecx + esi + 0xf90], al
add ecx, 1
adc edx, 0
jne 0x10040848
cmp ecx, 0x12
jb 0x10040830
push 0x1008cfb0
call fcn.10074576
add esp, 4
mov byte [ebp - 4], 0x16
lea edi, [esi + 0xf90]
mov ecx, edi
call fcn.1006a3f0
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 0x10040884
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10070f40
mov ecx, dword [0x100b0a20]
mov eax, dword [ecx]
mov byte [ebp - 4], 0x15
call dword [eax + 4]
mov byte [ebp - 4], 0x14
mov edx, dword [ebp - 0x80]
cmp edx, 0x10
jb 0x100408e0
mov ecx, dword [ebp - 0x94]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100408d6
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100409c4
push edx
push ecx
call fcn.100744bf
add esp, 8
mov byte [ebp - 4], 0x13
mov edx, dword [ebp - 0x98]
mov dword [ebp - 0x84], 0
mov dword [ebp - 0x80], 0xf
mov byte [ebp - 0x94], 0
cmp edx, 0x10
jb 0x10040936
mov ecx, dword [ebp - 0xac]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1004092c
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100409c4
push edx
push ecx
call fcn.100744bf
add esp, 8
mov byte [ebp - 4], 0x11
mov edx, dword [ebp - 0x50]
mov dword [ebp - 0x9c], 0
mov dword [ebp - 0x98], 0xf
mov byte [ebp - 0xac], 0
cmp edx, 0x10
jb 0x10040985
mov ecx, dword [ebp - 0x64]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1004097b
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100409c4
push edx
push ecx
call fcn.100744bf
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x68]
mov dword [ebp - 0x54], 0
mov dword [ebp - 0x50], 0xf
mov byte [ebp - 0x64], 0
cmp edx, 0x10
jb 0x100409d4
mov ecx, dword [ebp - 0x7c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100409ca
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x100409ca
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.100744bf
add esp, 8
mov ecx, dword [0x100ab520]
mov edx, 0x100a8880
cmp dword [0x100a8894], 0x10
push 0x100ac6b8
cmovae edx, dword [0x100a8880]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x1004255c
mov ecx, 0x100ac6b8
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10040a08
sub ecx, edx
cmp ecx, 0x20
jb 0x1004255c
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x3480]
mov dword [ebp - 0x44], 0xc117ab7d
mov dword [ebp - 0x40], 0x18c607b4
mov byte [ebp - 0x3c], 0x15
push 0x100ac6b8
test al, 1
jne 0x10040a9c
or eax, 1
mov dword [esi + 0x3480], 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 + 0x3895], 1
nop dword [eax + eax]
mov al, byte [ebp + ecx - 0x44]
mov byte [ecx + esi + 0x388c], al
add ecx, 1
adc edx, 0
jne 0x10040a88
cmp ecx, 9
jb 0x10040a70
push 0x1008cdd0
call fcn.10074576
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x388c]
mov ecx, edi
call fcn.1006a1b0
sub esp, 0x18
mov ecx, edi
mov edx, esp
mov dword [ebp - 0x40], 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 0x10040ad0
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10070f40
mov dword [ebp - 4], 0x19
mov eax, dword [esi + 0x259c]
mov dword [ebp - 0x1c], 0xb15eb433
test al, 1
jne 0x10040b49
or eax, 1
mov dword [esi + 0x259c], 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 + 0x1ac8], 1
nop dword [eax]
mov al, byte [ebp + ecx - 0x1c]
mov byte [ecx + esi + 0x1ac4], al
add ecx, 1
adc edx, 0
jne 0x10040b38
cmp ecx, 4
jb 0x10040b20
push 0x1008ce20
call fcn.10074576
add esp, 4
mov byte [ebp - 4], 0x19
lea edi, [esi + 0x1ac4]
mov ecx, edi
call fcn.1006a210
mov ecx, edi
mov dword [ebp - 0x7c], 0
mov dword [ebp - 0x6c], 0
mov dword [ebp - 0x68], 0xf
mov byte [ebp - 0x7c], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10040b74
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x7c]
call fcn.10070f40
mov byte [ebp - 4], 0x1b
movaps xmm0, xmmword [0x100985e0]
mov eax, dword [esi + 0xfb8]
mov dword [ebp - 0x28], 0xd45cbd65
mov word [ebp - 0x24], 0x3dfa
movups xmmword [ebp - 0x38], xmm0
test al, 1
jne 0x10040bf9
or eax, 1
mov dword [esi + 0xfb8], 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 + 0x3abe], 1
nop
mov al, byte [ebp + ecx - 0x38]
mov byte [ecx + esi + 0x3aa8], al
add ecx, 1
adc edx, 0
jne 0x10040be8
cmp ecx, 0x16
jb 0x10040bd0
push 0x1008ce70
call fcn.10074576
add esp, 4
mov byte [ebp - 4], 0x1b
lea edi, [esi + 0x3aa8]
mov ecx, edi
call fcn.1006a270
mov ecx, edi
mov dword [ebp - 0x64], 0
mov dword [ebp - 0x54], 0
mov dword [ebp - 0x50], 0xf
mov byte [ebp - 0x64], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10040c24
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x64]
call fcn.10070f40
push 0x100a8494
lea edx, [ebp - 0x64]
mov byte [ebp - 4], 0x1d
lea ecx, [ebp - 0xac]
call fcn.100710e0
add esp, 4
lea ecx, [ebp - 0x7c]
mov byte [ebp - 4], 0x1e
push ecx
push eax
push dword [ebp - 0x3e]
lea ecx, [ebp - 0x94]
call fcn.10072ba0
sub esp, 0x18
mov byte [ebp - 4], 0x1f
mov ecx, esp
mov dword [ebp - 0x1c], esp
lea edx, [ebp - 0x94]
push 0x100a88c8
call fcn.100710e0
add esp, 4
mov byte [ebp - 4], 0x20
movaps xmm0, xmmword [0x10098c90]
mov eax, dword [esi + 0x1d58]
mov word [ebp - 0x24], 0xdf6f
movups xmmword [ebp - 0x34], xmm0
test al, 1
jne 0x10040cf9
or eax, 1
mov dword [esi + 0x1d58], 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 + 0x100a], 1
nop dword [eax + eax]
mov al, byte [ebp + ecx - 0x34]
mov byte [ecx + esi + 0xff8], al
add ecx, 1
adc edx, 0
jne 0x10040ce8
cmp ecx, 0x12
jb 0x10040cd0
push 0x1008cec0
call fcn.10074576
add esp, 4
mov byte [ebp - 4], 0x20
lea edi, [esi + 0xff8]
mov ecx, edi
call fcn.1006a2d0
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 0x10040d24
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10070f40
mov ecx, dword [0x100b0a20]
mov eax, dword [ecx]
mov byte [ebp - 4], 0x25
call dword [eax]
mov byte [ebp - 4], 0x24
mov edx, dword [ebp - 0x80]
cmp edx, 0x10
jb 0x10040d7f
mov ecx, dword [ebp - 0x94]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10040d75
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10040e63
push edx
push ecx
call fcn.100744bf
add esp, 8
mov byte [ebp - 4], 0x23
mov edx, dword [ebp - 0x98]
mov dword [ebp - 0x84], 0
mov dword [ebp - 0x80], 0xf
mov byte [ebp - 0x94], 0
cmp edx, 0x10
jb 0x10040dd5
mov ecx, dword [ebp - 0xac]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10040dcb
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10040e63
push edx
push ecx
call fcn.100744bf
add esp, 8
mov byte [ebp - 4], 0x22
mov edx, dword [ebp - 0x50]
mov dword [ebp - 0x9c], 0
mov dword [ebp - 0x98], 0xf
mov byte [ebp - 0xac], 0
cmp edx, 0x10
jb 0x10040e24
mov ecx, dword [ebp - 0x64]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10040e1a
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10040e63
push edx
push ecx
call fcn.100744bf
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x68]
mov dword [ebp - 0x54], 0
mov dword [ebp - 0x50], 0xf
mov byte [ebp - 0x64], 0
cmp edx, 0x10
jb 0x10040e73
mov ecx, dword [ebp - 0x7c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10040e69
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x10040e69
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.100744bf
add esp, 8
mov ecx, dword [0x100ab520]
mov edx, 0x100a8880
cmp dword [0x100a8894], 0x10
push 0x100ac6b8
cmovae edx, dword [0x100a8880]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x1004255c
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x4168]
mov dword [ebp - 0x44], 0xf139fbd
mov dword [ebp - 0x40], 0xc8dc758c
mov byte [ebp - 0x3c], 0xd5
push 0x100ac6b8
test al, 1
jne 0x10040f1c
or eax, 1
mov dword [esi + 0x4168], 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 + 0xbe5], 1
mov al, byte [ebp + ecx - 0x44]
mov byte [esi + ecx + 0xbdc], al
add ecx, 1
adc edx, 0
jne 0x10040f08
cmp ecx, 9
jb 0x10040ef0
push 0x1008cc90
call fcn.10074576
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0xbdc]
mov ecx, edi
call fcn.1006a030
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 0x10040f50
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10070f40
mov dword [ebp - 4], 0x27
mov eax, dword [esi + 0x16fc]
mov dword [ebp - 0x1c], 0x7f5a80f3
test al, 1
jne 0x10040fc9
or eax, 1
mov dword [esi + 0x16fc], eax
mov byte [ebp - 4], 0x28
xorps xmm0, xmm0
movlpd qword [ebp - 0x44], xmm0
mov edx, dword [ebp - 0x40]
mov ecx, dword [ebp - 0x44]
mov byte [esi + 0x4c98], 1
nop dword [eax]
mov al, byte [ebp + ecx - 0x1c]
mov byte [esi + ecx + 0x4c94], al
add ecx, 1
adc edx, 0
jne 0x10040fb8
cmp ecx, 4
jb 0x10040fa0
push 0x1008cce0
call fcn.10074576
add esp, 4
mov byte [ebp - 4], 0x27
lea edi, [esi + 0x4c94]
mov ecx, edi
call fcn.1006a090
mov ecx, edi
mov dword [ebp - 0x7c], 0
mov dword [ebp - 0x6c], 0
mov dword [ebp - 0x68], 0xf
mov byte [ebp - 0x7c], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10040ff4
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x7c]
call fcn.10070f40
mov byte [ebp - 4], 0x29
movaps xmm0, xmmword [0x10099b80]
mov eax, dword [esi + 0x1018]
mov dword [ebp - 0x28], 0x1a5889a5
mov word [ebp - 0x24], 0x4fc2
movups xmmword [ebp - 0x38], xmm0
test al, 1
jne 0x10041079
or eax, 1
mov dword [esi + 0x1018], eax
mov byte [ebp - 4], 0x2a
xorps xmm0, xmm0
movlpd qword [ebp - 0x44], xmm0
mov edx, dword [ebp - 0x40]
mov ecx, dword [ebp - 0x44]
mov byte [esi + 0x3fb6], 1
nop
mov al, byte [ebp + ecx - 0x38]
mov byte [esi + ecx + 0x3fa0], al
add ecx, 1
adc edx, 0
jne 0x10041068
cmp ecx, 0x16
jb 0x10041050
push 0x1008cd30
call fcn.10074576
add esp, 4
mov byte [ebp - 4], 0x29
lea edi, [esi + 0x3fa0]
mov ecx, edi
call fcn.1006a0f0
mov ecx, edi
mov dword [ebp - 0x64], 0
mov dword [ebp - 0x54], 0
mov dword [ebp - 0x50], 0xf
mov byte [ebp - 0x64], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100410a4
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x64]
call fcn.10070f40
push 0x100a8680
lea edx, [ebp - 0x64]
mov byte [ebp - 4], 0x2b
lea ecx, [ebp - 0xac]
call fcn.100710e0
add esp, 4
lea ecx, [ebp - 0x7c]
mov byte [ebp - 4], 0x2c
push ecx
push eax
push dword [ebp - 0x14]
lea ecx, [ebp - 0x94]
call fcn.10072ba0
sub esp, 0x18
mov byte [ebp - 4], 0x2d
mov ecx, esp
mov dword [ebp - 0x40], esp
lea edx, [ebp - 0x94]
push 0x100a88c8
call fcn.100710e0
add esp, 4
mov byte [ebp - 4], 0x2e
movaps xmm0, xmmword [0x100996c0]
mov eax, dword [esi + 0x1850]
mov word [ebp - 0x24], 0xebaf
movups xmmword [ebp - 0x34], xmm0
test al, 1
jne 0x10041179
or eax, 1
mov dword [esi + 0x1850], 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 + 0x11a2], 1
nop dword [eax + eax]
mov al, byte [ebp + ecx - 0x34]
mov byte [esi + ecx + 0x1190], al
add ecx, 1
adc edx, 0
jne 0x10041168
cmp ecx, 0x12
jb 0x10041150
push 0x1008cd80
call fcn.10074576
add esp, 4
mov byte [ebp - 4], 0x2e
lea edi, [esi + 0x1190]
mov ecx, edi
call fcn.1006a150
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 0x100411a4
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10070f40
mov ecx, dword [0x100b0a20]
mov eax, dword [ecx]
mov byte [ebp - 4], 0x33
call dword [eax]
mov byte [ebp - 4], 0x32
mov edx, dword [ebp - 0x80]
cmp edx, 0x10
jb 0x100411ff
mov ecx, dword [ebp - 0x94]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100411f5
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100412e3
push edx
push ecx
call fcn.100744bf
add esp, 8
mov byte [ebp - 4], 0x31
mov edx, dword [ebp - 0x98]
mov dword [ebp - 0x84], 0
mov dword [ebp - 0x80], 0xf
mov byte [ebp - 0x94], 0
cmp edx, 0x10
jb 0x10041255
mov ecx, dword [ebp - 0xac]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1004124b
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100412e3
push edx
push ecx
call fcn.100744bf
add esp, 8
mov byte [ebp - 4], 0x30
mov edx, dword [ebp - 0x50]
mov dword [ebp - 0x9c], 0
mov dword [ebp - 0x98], 0xf
mov byte [ebp - 0xac], 0
cmp edx, 0x10
jb 0x100412a4
mov ecx, dword [ebp - 0x64]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1004129a
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100412e3
push edx
push ecx
call fcn.100744bf
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x68]
mov dword [ebp - 0x54], 0
mov dword [ebp - 0x50], 0xf
mov byte [ebp - 0x64], 0
cmp edx, 0x10
jb 0x100412f3
mov ecx, dword [ebp - 0x7c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100412e9
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x100412e9
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.100744bf
add esp, 8
mov ecx, dword [0x100ab520]
mov edx, 0x100a8880
cmp dword [0x100a8894], 0x10
push 0x100ac6b8
cmovae edx, dword [0x100a8880]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x1004255c
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x2f60]
mov dword [ebp - 0x44], 0x69570999
mov dword [ebp - 0x40], 0x42c25d92
mov byte [ebp - 0x3c], 0xf1
push 0x100ac6b8
test al, 1
jne 0x1004139c
or eax, 1
mov dword [esi + 0x2f60], 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 + 0x243d], 1
mov al, byte [ebp + ecx - 0x44]
mov byte [esi + ecx + 0x2434], al
add ecx, 1
adc edx, 0
jne 0x10041388
cmp ecx, 9
jb 0x10041370
push 0x1008cb50
call fcn.10074576
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x2434]
mov ecx, edi
call fcn.10069eb0
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 0x100413d0
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10070f40
mov dword [ebp - 4], 0x35
mov eax, dword [esi + 0x1a14]
mov dword [ebp - 0x1c], 0x191e16d7
test al, 1
jne 0x10041449
or eax, 1
mov dword [esi + 0x1a14], eax
mov byte [ebp - 4], 0x36
xorps xmm0, xmm0
movlpd qword [ebp - 0x44], xmm0
mov edx, dword [ebp - 0x40]
mov ecx, dword [ebp - 0x44]
mov byte [esi + 0x3e5c], 1
nop dword [eax]
mov al, byte [ebp + ecx - 0x1c]
mov byte [esi + ecx + 0x3e58], al
add ecx, 1
adc edx, 0
jne 0x10041438
cmp ecx, 4
jb 0x10041420
push 0x1008cba0
call fcn.10074576
add esp, 4
mov byte [ebp - 4], 0x35
lea edi, [esi + 0x3e58]
mov ecx, edi
call fcn.10069f10
mov ecx, edi
mov dword [ebp - 0x7c], 0
mov dword [ebp - 0x6c], 0
mov dword [ebp - 0x68], 0xf
mov byte [ebp - 0x7c], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10041474
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x7c]
call fcn.10070f40
mov byte [ebp - 4], 0x37
movaps xmm0, xmmword [0x10098ab0]
mov eax, dword [esi + 0x1e2c]
mov dword [ebp - 0x28], 0x7c1c1f81
mov word [ebp - 0x24], 0x67dc
movups xmmword [ebp - 0x38], xmm0
test al, 1
jne 0x100414f9
or eax, 1
mov dword [esi + 0x1e2c], eax
mov byte [ebp - 4], 0x38
xorps xmm0, xmm0
movlpd qword [ebp - 0x44], xmm0
mov edx, dword [ebp - 0x40]
mov ecx, dword [ebp - 0x44]
mov byte [esi + 0x14ce], 1
nop
mov al, byte [ebp + ecx - 0x38]
mov byte [esi + ecx + 0x14b8], al
add ecx, 1
adc edx, 0
jne 0x100414e8
cmp ecx, 0x16
jb 0x100414d0
push 0x1008cbf0
call fcn.10074576
add esp, 4
mov byte [ebp - 4], 0x37
lea edi, [esi + 0x14b8]
mov ecx, edi
call fcn.10069f70
mov ecx, edi
mov dword [ebp - 0x64], 0
mov dword [ebp - 0x54], 0
mov dword [ebp - 0x50], 0xf
mov byte [ebp - 0x64], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10041524
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x64]
call fcn.10070f40
push 0x100a8868
lea edx, [ebp - 0x64]
mov byte [ebp - 4], 0x39
lea ecx, [ebp - 0xac]
call fcn.100710e0
add esp, 4
lea ecx, [ebp - 0x7c]
mov byte [ebp - 4], 0x3a
push ecx
push eax
push dword [ebp - 0x14]
lea ecx, [ebp - 0x94]
call fcn.10072ba0
sub esp, 0x18
mov byte [ebp - 4], 0x3b
mov ecx, esp
mov dword [ebp - 0x40], esp
lea edx, [ebp - 0x94]
push 0x100a88c8
call fcn.100710e0
add esp, 4
mov byte [ebp - 4], 0x3c
movaps xmm0, xmmword [0x10098580]
mov eax, dword [esi + 0x257c]
mov word [ebp - 0x24], 0x7d8b
movups xmmword [ebp - 0x34], xmm0
test al, 1
jne 0x100415f9
or eax, 1
mov dword [esi + 0x257c], 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 + 0x3c46], 1
nop dword [eax + eax]
mov al, byte [ebp + ecx - 0x34]
mov byte [esi + ecx + 0x3c34], al
add ecx, 1
adc edx, 0
jne 0x100415e8
cmp ecx, 0x12
jb 0x100415d0
push 0x1008cc40
call fcn.10074576
add esp, 4
mov byte [ebp - 4], 0x3c
lea edi, [esi + 0x3c34]
mov ecx, edi
call fcn.10069fd0
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 0x10041624
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10070f40
mov ecx, dword [0x100b0a20]
mov eax, dword [ecx]
mov byte [ebp - 4], 0x41
call dword [eax]
mov byte [ebp - 4], 0x40
mov edx, dword [ebp - 0x80]
cmp edx, 0x10
jb 0x1004167f
mov ecx, dword [ebp - 0x94]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10041675
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10041763
push edx
push ecx
call fcn.100744bf
add esp, 8
mov byte [ebp - 4], 0x3f
mov edx, dword [ebp - 0x98]
mov dword [ebp - 0x84], 0
mov dword [ebp - 0x80], 0xf
mov byte [ebp - 0x94], 0
cmp edx, 0x10
jb 0x100416d5
mov ecx, dword [ebp - 0xac]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100416cb
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10041763
push edx
push ecx
call fcn.100744bf
add esp, 8
mov byte [ebp - 4], 0x3e
mov edx, dword [ebp - 0x50]
mov dword [ebp - 0x9c], 0
mov dword [ebp - 0x98], 0xf
mov byte [ebp - 0xac], 0
cmp edx, 0x10
jb 0x10041724
mov ecx, dword [ebp - 0x64]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1004171a
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10041763
push edx
push ecx
call fcn.100744bf
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x68]
mov dword [ebp - 0x54], 0
mov dword [ebp - 0x50], 0xf
mov byte [ebp - 0x64], 0
cmp edx, 0x10
jb 0x10041773
mov ecx, dword [ebp - 0x7c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10041769
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x10041769
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.100744bf
add esp, 8
mov ecx, dword [0x100ab520]
mov edx, 0x100a8880
cmp dword [0x100a8894], 0x10
push 0x100ac6b8
cmovae edx, dword [0x100a8880]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x1004255c
mov ecx, 0x100ac6b8
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100417a7
sub ecx, edx
cmp ecx, 0x20
jb 0x1004255c
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x3948]
mov dword [ebp - 0x18], 0x43855f21
mov dword [ebp - 0x14], 0x6b160c4b
push 0x100ac6b8
test al, 1
jne 0x1004183c
or eax, 1
mov dword [esi + 0x3948], eax
mov dword [ebp - 4], 0x42
xorps xmm0, xmm0
movlpd qword [ebp - 0x44], xmm0
mov edx, dword [ebp - 0x40]
mov ecx, dword [ebp - 0x44]
mov byte [esi + 0x1760], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x18]
mov byte [esi + ecx + 0x1758], al
add ecx, 1
adc edx, 0
jne 0x10041828
cmp ecx, 8
jb 0x10041810
push 0x1008ca10
call fcn.10074576
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x1758]
mov ecx, edi
call fcn.10069d30
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 0x10041870
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10070f40
mov dword [ebp - 4], 0x43
mov eax, dword [esi + 0x420c]
mov dword [ebp - 0x1c], 0x33cc406f
test al, 1
jne 0x100418e9
or eax, 1
mov dword [esi + 0x420c], eax
mov byte [ebp - 4], 0x44
xorps xmm0, xmm0
movlpd qword [ebp - 0x44], xmm0
mov edx, dword [ebp - 0x40]
mov ecx, dword [ebp - 0x44]
mov byte [esi + 0x180], 1
nop dword [eax]
mov al, byte [ebp + ecx - 0x1c]
mov byte [esi + ecx + 0x17c], al
add ecx, 1
adc edx, 0
jne 0x100418d8
cmp ecx, 4
jb 0x100418c0
push 0x1008ca60
call fcn.10074576
add esp, 4
mov byte [ebp - 4], 0x43
lea edi, [esi + 0x17c]
mov ecx, edi
call fcn.10069d90
mov ecx, edi
mov dword [ebp - 0x7c], 0
mov dword [ebp - 0x6c], 0
mov dword [ebp - 0x68], 0xf
mov byte [ebp - 0x7c], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10041914
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x7c]
call fcn.10070f40
mov byte [ebp - 4], 0x45
movaps xmm0, xmmword [0x10098b00]
mov eax, dword [esi + 0xdac]
mov dword [ebp - 0x28], 0x56ce4939
mov word [ebp - 0x24], 0x234c
movups xmmword [ebp - 0x38], xmm0
test al, 1
jne 0x10041999
or eax, 1
mov dword [esi + 0xdac], eax
mov byte [ebp - 4], 0x46
xorps xmm0, xmm0
movlpd qword [ebp - 0x44], xmm0
mov edx, dword [ebp - 0x40]
mov ecx, dword [ebp - 0x44]
mov byte [esi + 0x4bbe], 1
nop
mov al, byte [ebp + ecx - 0x38]
mov byte [ecx + esi + 0x4ba8], al
add ecx, 1
adc edx, 0
jne 0x10041988
cmp ecx, 0x16
jb 0x10041970
push 0x1008cab0
call fcn.10074576
add esp, 4
mov byte [ebp - 4], 0x45
lea edi, [esi + 0x4ba8]
mov ecx, edi
call fcn.10069df0
mov ecx, edi
mov dword [ebp - 0x64], 0
mov dword [ebp - 0x54], 0
mov dword [ebp - 0x50], 0xf
mov byte [ebp - 0x64], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100419c4
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x64]
call fcn.10070f40
push 0x100a8494
lea edx, [ebp - 0x64]
mov byte [ebp - 4], 0x47
lea ecx, [ebp - 0xac]
call fcn.100710e0
add esp, 4
lea ecx, [ebp - 0x7c]
mov byte [ebp - 4], 0x48
push ecx
push eax
push dword [ebp - 0x14]
lea ecx, [ebp - 0x94]
call fcn.10072ba0
sub esp, 0x18
mov byte [ebp - 4], 0x49
mov ecx, esp
mov dword [ebp - 0x40], esp
lea edx, [ebp - 0x94]
push 0x100a88c8
call fcn.100710e0
add esp, 4
mov byte [ebp - 4], 0x4a
movaps xmm0, xmmword [0x10098510]
mov eax, dword [esi + 0x1384]
mov word [ebp - 0x24], 0x2b33
movups xmmword [ebp - 0x34], xmm0
test al, 1
jne 0x10041a99
or eax, 1
mov dword [esi + 0x1384], 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 + 0x392a], 1
nop dword [eax + eax]
mov al, byte [ebp + ecx - 0x34]
mov byte [ecx + esi + 0x3918], al
add ecx, 1
adc edx, 0
jne 0x10041a88
cmp ecx, 0x12
jb 0x10041a70
push 0x1008cb00
call fcn.10074576
add esp, 4
mov byte [ebp - 4], 0x4a
lea edi, [esi + 0x3918]
mov ecx, edi
call fcn.10069e50
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 0x10041ac4
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10070f40
mov ecx, dword [0x100b0a20]
mov eax, dword [ecx]
mov byte [ebp - 4], 0x4f
call dword [eax]
mov byte [ebp - 4], 0x4e
mov edx, dword [ebp - 0x80]
cmp edx, 0x10
jb 0x10041b1f
mov ecx, dword [ebp - 0x94]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10041b15
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10041c03
push edx
push ecx
call fcn.100744bf
add esp, 8
mov byte [ebp - 4], 0x4d
mov edx, dword [ebp - 0x98]
mov dword [ebp - 0x84], 0
mov dword [ebp - 0x80], 0xf
mov byte [ebp - 0x94], 0
cmp edx, 0x10
jb 0x10041b75
mov ecx, dword [ebp - 0xac]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10041b6b
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10041c03
push edx
push ecx
call fcn.100744bf
add esp, 8
mov byte [ebp - 4], 0x4c
mov edx, dword [ebp - 0x50]
mov dword [ebp - 0x9c], 0
mov dword [ebp - 0x98], 0xf
mov byte [ebp - 0xac], 0
cmp edx, 0x10
jb 0x10041bc4
mov ecx, dword [ebp - 0x64]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10041bba
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10041c03
push edx
push ecx
call fcn.100744bf
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x68]
mov dword [ebp - 0x54], 0
mov dword [ebp - 0x50], 0xf
mov byte [ebp - 0x64], 0
cmp edx, 0x10
jb 0x10041c13
mov ecx, dword [ebp - 0x7c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10041c09
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x10041c09
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.100744bf
add esp, 8
mov ecx, dword [0x100ab520]
mov edx, 0x100a8880
cmp dword [0x100a8894], 0x10
push 0x100ac6b8
cmovae edx, dword [0x100a8880]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x1004255c
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x36f4]
mov dword [ebp - 0x18], 0xcb3761e5
mov dword [ebp - 0x14], 0x9186ec27
push 0x100ac6b8
test al, 1
jne 0x10041cbc
or eax, 1
mov dword [esi + 0x36f4], eax
mov dword [ebp - 4], 0x50
xorps xmm0, xmm0
movlpd qword [ebp - 0x44], xmm0
mov edx, dword [ebp - 0x40]
mov ecx, dword [ebp - 0x44]
mov byte [esi + 0x1310], 1
nop dword [eax]
mov al, byte [ebp + ecx - 0x18]
mov byte [ecx + esi + 0x1308], al
add ecx, 1
adc edx, 0
jne 0x10041ca8
cmp ecx, 8
jb 0x10041c90
push 0x1008c8d0
call fcn.10074576
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x1308]
mov ecx, edi
call fcn.10069bb0
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 0x10041cf0
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10070f40
mov dword [ebp - 4], 0x51
mov eax, dword [esi + 0x14dc]
mov dword [ebp - 0x1c], 0xbb7e7eab
test al, 1
jne 0x10041d69
or eax, 1
mov dword [esi + 0x14dc], eax
mov byte [ebp - 4], 0x52
xorps xmm0, xmm0
movlpd qword [ebp - 0x44], xmm0
mov edx, dword [ebp - 0x40]
mov ecx, dword [ebp - 0x44]
mov byte [esi + 0x9d4], 1
nop dword [eax]
mov al, byte [ebp + ecx - 0x1c]
mov byte [ecx + esi + 0x9d0], al
add ecx, 1
adc edx, 0
jne 0x10041d58
cmp ecx, 4
jb 0x10041d40
push 0x1008c920
call fcn.10074576
add esp, 4
mov byte [ebp - 4], 0x51
lea edi, [esi + 0x9d0]
mov ecx, edi
call fcn.10069c10
mov ecx, edi
mov dword [ebp - 0x7c], 0
mov dword [ebp - 0x6c], 0
mov dword [ebp - 0x68], 0xf
mov byte [ebp - 0x7c], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10041d94
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x7c]
call fcn.10070f40
mov byte [ebp - 4], 0x53
movaps xmm0, xmmword [0x10099a70]
mov eax, dword [esi + 0x2d60]
mov dword [ebp - 0x28], 0xde7c77fd
mov word [ebp - 0x24], 0xc320
movups xmmword [ebp - 0x38], xmm0
test al, 1
jne 0x10041e19
or eax, 1
mov dword [esi + 0x2d60], eax
mov byte [ebp - 4], 0x54
xorps xmm0, xmm0
movlpd qword [ebp - 0x44], xmm0
mov edx, dword [ebp - 0x40]
mov ecx, dword [ebp - 0x44]
mov byte [esi + 0x481e], 1
nop
mov al, byte [ebp + ecx - 0x38]
mov byte [ecx + esi + 0x4808], al
add ecx, 1
adc edx, 0
jne 0x10041e08
cmp ecx, 0x16
jb 0x10041df0
push 0x1008c970
call fcn.10074576
add esp, 4
mov byte [ebp - 4], 0x53
lea edi, [esi + 0x4808]
mov ecx, edi
call fcn.10069c70
mov ecx, edi
mov dword [ebp - 0x64], 0
mov dword [ebp - 0x54], 0
mov dword [ebp - 0x50], 0xf
mov byte [ebp - 0x64], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10041e44
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x64]
call fcn.10070f40
push 0x100a8680
lea edx, [ebp - 0x64]
mov byte [ebp - 4], 0x55
lea ecx, [ebp - 0xac]
call fcn.100710e0
add esp, 4
lea ecx, [ebp - 0x7c]
mov byte [ebp - 4], 0x56
push ecx
push eax
push dword [ebp - 0x14]
lea ecx, [ebp - 0x94]
call fcn.10072ba0
sub esp, 0x18
mov byte [ebp - 4], 0x57
mov ecx, esp
mov dword [ebp - 0x40], esp
lea edx, [ebp - 0x94]
push 0x100a88c8
call fcn.100710e0
add esp, 4
mov byte [ebp - 4], 0x58
movaps xmm0, xmmword [0x10099e40]
mov eax, dword [esi + 0x448c]
mov word [ebp - 0x24], 0x15f7
movups xmmword [ebp - 0x34], xmm0
test al, 1
jne 0x10041f19
or eax, 1
mov dword [esi + 0x448c], 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 + 0x40a6], 1
nop dword [eax + eax]
mov al, byte [ebp + ecx - 0x34]
mov byte [ecx + esi + 0x4094], al
add ecx, 1
adc edx, 0
jne 0x10041f08
cmp ecx, 0x12
jb 0x10041ef0
push 0x1008c9c0
call fcn.10074576
add esp, 4
mov byte [ebp - 4], 0x58
lea edi, [esi + 0x4094]
mov ecx, edi
call fcn.10069cd0
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 0x10041f44
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10070f40
mov ecx, dword [0x100b0a20]
mov eax, dword [ecx]
mov byte [ebp - 4], 0x5d
call dword [eax]
mov byte [ebp - 4], 0x5c
mov edx, dword [ebp - 0x80]
cmp edx, 0x10
jb 0x10041f9f
mov ecx, dword [ebp - 0x94]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10041f95
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10042083
push edx
push ecx
call fcn.100744bf
add esp, 8
mov byte [ebp - 4], 0x5b
mov edx, dword [ebp - 0x98]
mov dword [ebp - 0x84], 0
mov dword [ebp - 0x80], 0xf
mov byte [ebp - 0x94], 0
cmp edx, 0x10
jb 0x10041ff5
mov ecx, dword [ebp - 0xac]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10041feb
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10042083
push edx
push ecx
call fcn.100744bf
add esp, 8
mov byte [ebp - 4], 0x5a
mov edx, dword [ebp - 0x50]
mov dword [ebp - 0x9c], 0
mov dword [ebp - 0x98], 0xf
mov byte [ebp - 0xac], 0
cmp edx, 0x10
jb 0x10042044
mov ecx, dword [ebp - 0x64]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1004203a
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10042083
push edx
push ecx
call fcn.100744bf
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x68]
mov dword [ebp - 0x54], 0
mov dword [ebp - 0x50], 0xf
mov byte [ebp - 0x64], 0
cmp edx, 0x10
jb 0x10042093
mov ecx, dword [ebp - 0x7c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10042089
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x10042089
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.100744bf
add esp, 8
mov ecx, dword [0x100ab520]
mov edx, 0x100a8880
cmp dword [0x100a8894], 0x10
push 0x100ac6b8
cmovae edx, dword [0x100a8880]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x1004255c
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x4b50]
mov dword [ebp - 0x18], 0x5391bf23
mov dword [ebp - 0x14], 0xeb4040b1
push 0x100ac6b8
test al, 1
jne 0x1004213c
or eax, 1
mov dword [esi + 0x4b50], eax
mov dword [ebp - 4], 0x5e
xorps xmm0, xmm0
movlpd qword [ebp - 0x44], xmm0
mov edx, dword [ebp - 0x40]
mov ecx, dword [ebp - 0x44]
mov byte [esi + 0x2428], 1
nop dword [eax]
mov al, byte [ebp + ecx - 0x18]
mov byte [esi + ecx + 0x2420], al
add ecx, 1
adc edx, 0
jne 0x10042128
cmp ecx, 8
jb 0x10042110
push 0x1008c790
call fcn.10074576
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x2420]
mov ecx, edi
call fcn.10069a30
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 0x10042170
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10070f40
mov dword [ebp - 4], 0x5f
mov eax, dword [esi + 0x30e8]
mov dword [ebp - 0x1c], 0x23d8a06d
test al, 1
jne 0x100421e9
or eax, 1
mov dword [esi + 0x30e8], eax
mov byte [ebp - 4], 0x60
xorps xmm0, xmm0
movlpd qword [ebp - 0x44], xmm0
mov edx, dword [ebp - 0x40]
mov ecx, dword [ebp - 0x44]
mov byte [esi + 0x3590], 1
nop dword [eax]
mov al, byte [ebp + ecx - 0x1c]
mov byte [esi + ecx + 0x358c], al
add ecx, 1
adc edx, 0
jne 0x100421d8
cmp ecx, 4
jb 0x100421c0
push 0x1008c7e0
call fcn.10074576
add esp, 4
mov byte [ebp - 4], 0x5f
lea edi, [esi + 0x358c]
mov ecx, edi
call fcn.10069a90
mov ecx, edi
mov dword [ebp - 0x7c], 0
mov dword [ebp - 0x6c], 0
mov dword [ebp - 0x68], 0xf
mov byte [ebp - 0x7c], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10042214
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x7c]
call fcn.10070f40
mov byte [ebp - 4], 0x61
movaps xmm0, xmmword [0x10099ad0]
mov eax, dword [esi + 0xd70]
mov dword [ebp - 0x28], 0x46daa93b
mov word [ebp - 0x24], 0x6fb6
movups xmmword [ebp - 0x38], xmm0
test al, 1
jne 0x10042299
or eax, 1
mov dword [esi + 0xd70], eax
mov byte [ebp - 4], 0x62
xorps xmm0, xmm0
movlpd qword [ebp - 0x44], xmm0
mov edx, dword [ebp - 0x40]
mov ecx, dword [ebp - 0x44]
mov byte [esi + 0x3ea2], 1
nop
mov al, byte [ebp + ecx - 0x38]
mov byte [esi + ecx + 0x3e8c], al
add ecx, 1
adc edx, 0
jne 0x10042288
cmp ecx, 0x16
jb 0x10042270
push 0x1008c830
call fcn.10074576
add esp, 4
mov byte [ebp - 4], 0x61
lea edi, [esi + 0x3e8c]
mov ecx, edi
call fcn.10069af0
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 0x100422d0
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0xc4]
call fcn.10070f40
push 0x100a8868
lea edx, [ebp - 0xc4]
mov byte [ebp - 4], 0x63
lea ecx, [ebp - 0xf4]
call fcn.100710e0
add esp, 4
lea ecx, [ebp - 0x7c]
mov byte [ebp - 4], 0x64
push ecx
push eax
push dword [ebp - 0x14]
lea ecx, [ebp - 0xdc]
call fcn.10072ba0
sub esp, 0x18
mov byte [ebp - 4], 0x65
mov ecx, esp
mov dword [ebp - 0x40], esp
lea edx, [ebp - 0xdc]
push 0x100a88c8
call fcn.100710e0
add esp, 4
mov byte [ebp - 4], 0x66
movaps xmm0, xmmword [0x100994f0]
mov eax, dword [esi + 0x44e4]
mov word [ebp - 0x24], 0xcb31
movups xmmword [ebp - 0x34], xmm0
test al, 1
jne 0x100423a9
or eax, 1
mov dword [esi + 0x44e4], 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 + 0x42be], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x34]
mov byte [esi + ecx + 0x42ac], al
add ecx, 1
adc edx, 0
jne 0x10042398
cmp ecx, 0x12
jb 0x10042380
push 0x1008c880
call fcn.10074576
add esp, 4
mov byte [ebp - 4], 0x66
lea esi, [esi + 0x42ac]
mov ecx, esi
call fcn.10069b50
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 0x100423d4
sub ecx, edi
push ecx
push esi
mov ecx, edx
call fcn.10070f40
mov ecx, dword [0x100b0a20]
mov eax, dword [ecx]
mov byte [ebp - 4], 0x6b
call dword [eax]
mov byte [ebp - 4], 0x6a
mov edx, dword [ebp - 0xc8]
cmp edx, 0x10
jb 0x10042432
mov ecx, dword [ebp - 0xdc]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10042428
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10042528
push edx
push ecx
call fcn.100744bf
add esp, 8
mov byte [ebp - 4], 0x69
mov edx, dword [ebp - 0xe0]
mov dword [ebp - 0xcc], 0
mov dword [ebp - 0xc8], 0xf
mov byte [ebp - 0xdc], 0
cmp edx, 0x10
jb 0x1004248b
mov ecx, dword [ebp - 0xf4]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10042481
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10042528
push edx
push ecx
call fcn.100744bf
add esp, 8
mov byte [ebp - 4], 0x68
mov edx, dword [ebp - 0xb0]
mov dword [ebp - 0xe4], 0
mov dword [ebp - 0xe0], 0xf
mov byte [ebp - 0xf4], 0
cmp edx, 0x10
jb 0x100424e0
mov ecx, dword [ebp - 0xc4]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100424d6
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10042528
push edx
push ecx
call fcn.100744bf
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x68]
mov dword [ebp - 0xb4], 0
mov dword [ebp - 0xb0], 0xf
mov byte [ebp - 0xc4], 0
cmp edx, 0x10
jb 0x10042538
mov ecx, dword [ebp - 0x7c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1004252e
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x1004252e
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.100744bf
add esp, 8
mov ecx, dword [0x100ab520]
mov edx, 0x100a8880
cmp dword [0x100a8894], 0x10
push 0x100ac6b8
cmovae edx, dword [0x100a8880]
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.10073b99
mov esp, ebp
pop ebp
ret