Function at 0x10044500
Capabilities:
Parse pe header

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x10085f2b
mov eax, dword fs:[0]
push eax
sub esp, 0xd4
mov eax, dword [0x100b300c]
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 [0x100b5244]
push 0x100bbdd0
push 0
push 0
mov esi, dword [eax + ecx*4]
mov dword [ebp - 0x18], 0xb3f444e1
mov eax, dword [esi + 0x4ee4]
test al, 1
jne 0x100445ac
or eax, 1
mov dword [esi + 0x4ee4], eax
mov dword [ebp - 4], 0
xorps xmm0, xmm0
movlpd qword [ebp - 0x28], xmm0
mov edx, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x28]
mov byte [esi + 0x4b30], 1
nop dword [eax]
mov al, byte [ebp + ecx - 0x18]
mov byte [esi + ecx + 0x4b2c], al
add ecx, 1
adc edx, 0
jne 0x10044598
cmp ecx, 4
jb 0x10044580
push 0x10096f10
call fcn.1007d027
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x4b2c]
mov ecx, edi
call fcn.1006f830
mov ecx, edi
mov dword [ebp - 0x70], 0
mov dword [ebp - 0x6c], 0xf
mov byte [ebp - 0x80], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100445d0
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x80]
call fcn.10079810
mov dword [ebp - 4], 1
mov eax, dword [esi + 0x3f40]
mov dword [ebp - 0x38], 0xdab94ee8
mov dword [ebp - 0x34], 0xeaee3ff6
mov dword [ebp - 0x30], 0xd6f64db7
mov word [ebp - 0x2c], 0x49e4
test al, 1
jne 0x1004465a
or eax, 1
mov dword [esi + 0x3f40], eax
mov byte [ebp - 4], 2
xorps xmm0, xmm0
movlpd qword [ebp - 0x28], xmm0
mov edx, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x28]
mov byte [esi + 0x434a], 1
mov al, byte [ebp + ecx - 0x38]
mov byte [esi + ecx + 0x433c], al
add ecx, 1
adc edx, 0
jne 0x10044649
cmp ecx, 0xe
jb 0x10044631
push 0x10096f60
call fcn.1007d027
add esp, 4
mov byte [ebp - 4], 1
lea edi, [esi + 0x433c]
mov ecx, edi
call fcn.1006f890
mov ecx, edi
mov dword [ebp - 0x40], 0
mov dword [ebp - 0x3c], 0xf
mov byte [ebp - 0x50], 0
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10044680
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x50]
call fcn.10079810
push 0x100b44ac
lea edx, [ebp - 0x50]
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x98]
call fcn.100799b0
add esp, 4
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 4
push ecx
push eax
push dword [ebp - 0x15]
lea ecx, [ebp - 0x68]
call fcn.1007b670
sub esp, 0x18
mov byte [ebp - 4], 5
mov ecx, esp
mov dword [ebp - 0x18], esp
lea edx, [ebp - 0x68]
push 0x100b48e0
call fcn.100799b0
add esp, 4
mov byte [ebp - 4], 6
mov eax, dword [esi + 0x4ef8]
mov dword [ebp - 0x38], 0xdfa840ac
mov dword [ebp - 0x34], 0xb5ba2bb8
mov dword [ebp - 0x30], 0xd0e75da2
mov word [ebp - 0x2c], 0x24b6
mov byte [ebp - 0x2a], 0xdb
test al, 1
jne 0x10044759
or eax, 1
mov dword [esi + 0x4ef8], eax
mov byte [ebp - 4], 7
xorps xmm0, xmm0
movlpd qword [ebp - 0x28], xmm0
mov edx, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x28]
mov byte [esi + 0x81b], 1
nop dword [eax]
mov al, byte [ebp + ecx - 0x38]
mov byte [esi + ecx + 0x80c], al
add ecx, 1
adc edx, 0
jne 0x10044748
cmp ecx, 0xf
jb 0x10044730
push 0x10096fb0
call fcn.1007d027
add esp, 4
mov byte [ebp - 4], 6
lea edi, [esi + 0x80c]
mov ecx, edi
call fcn.1006f8f0
sub esp, 0x18
mov ecx, edi
mov edx, esp
lea ebx, [ecx + 1]
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0xf
mov byte [edx], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10044781
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10079810
mov ecx, dword [0x100bed98]
mov eax, dword [ecx]
mov byte [ebp - 4], 5
call dword [eax + 4]
mov byte [ebp - 4], 4
mov edx, dword [ebp - 0x54]
cmp edx, 0x10
jb 0x100447da
mov ecx, dword [ebp - 0x68]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100447d0
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100448b8
push edx
push ecx
call fcn.1007cf70
add esp, 8
mov byte [ebp - 4], 3
mov edx, dword [ebp - 0x84]
mov dword [ebp - 0x58], 0
mov dword [ebp - 0x54], 0xf
mov byte [ebp - 0x68], 0
cmp edx, 0x10
jb 0x1004482a
mov ecx, dword [ebp - 0x98]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10044820
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100448b8
push edx
push ecx
call fcn.1007cf70
add esp, 8
mov byte [ebp - 4], 1
mov edx, dword [ebp - 0x3c]
mov dword [ebp - 0x88], 0
mov dword [ebp - 0x84], 0xf
mov byte [ebp - 0x98], 0
cmp edx, 0x10
jb 0x10044879
mov ecx, dword [ebp - 0x50]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1004486f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100448b8
push edx
push ecx
call fcn.1007cf70
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x6c]
mov dword [ebp - 0x40], 0
mov dword [ebp - 0x3c], 0xf
mov byte [ebp - 0x50], 0
cmp edx, 0x10
jb 0x100448c8
mov ecx, dword [ebp - 0x80]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100448be
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x100448be
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.1007cf70
add esp, 8
mov ecx, dword [0x100bac08]
mov edx, 0x100b4898
cmp dword [0x100b48ac], 0x10
push 0x100bbdd0
cmovae edx, dword [0x100b4898]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x10046c29
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x4774]
mov dword [ebp - 0x18], 0xbfb050ab
push 0x100bbdd0
push 0
push 0
test al, 1
jne 0x1004496c
or eax, 1
mov dword [esi + 0x4774], eax
mov dword [ebp - 4], 8
xorps xmm0, xmm0
movlpd qword [ebp - 0x28], xmm0
mov edx, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x28]
mov byte [esi + 0x1b68], 1
nop
mov al, byte [ebp + ecx - 0x18]
mov byte [esi + ecx + 0x1b64], al
add ecx, 1
adc edx, 0
jne 0x10044958
cmp ecx, 4
jb 0x10044940
push 0x10096e20
call fcn.1007d027
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x1b64]
mov ecx, edi
call fcn.1006f710
mov ecx, edi
mov dword [ebp - 0x58], 0
mov dword [ebp - 0x54], 0xf
mov byte [ebp - 0x68], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10044990
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x68]
call fcn.10079810
mov dword [ebp - 4], 9
mov eax, dword [esi + 0x4b04]
mov dword [ebp - 0x38], 0xd6fd5aa2
mov dword [ebp - 0x34], 0x5cdc2db4
mov dword [ebp - 0x30], 0xdab259fd
mov word [ebp - 0x2c], 0x5ba6
test al, 1
jne 0x10044a1a
or eax, 1
mov dword [esi + 0x4b04], eax
mov byte [ebp - 4], 0xa
xorps xmm0, xmm0
movlpd qword [ebp - 0x28], xmm0
mov edx, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x28]
mov byte [esi + 0x42a], 1
mov al, byte [ebp + ecx - 0x38]
mov byte [ecx + esi + 0x41c], al
add ecx, 1
adc edx, 0
jne 0x10044a09
cmp ecx, 0xe
jb 0x100449f1
push 0x10096e70
call fcn.1007d027
add esp, 4
mov byte [ebp - 4], 9
lea edi, [esi + 0x41c]
mov ecx, edi
call fcn.1006f770
mov ecx, edi
mov dword [ebp - 0x40], 0
mov dword [ebp - 0x3c], 0xf
mov byte [ebp - 0x50], 0
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10044a40
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x50]
call fcn.10079810
push 0x100b4698
lea edx, [ebp - 0x50]
mov byte [ebp - 4], 0xb
lea ecx, [ebp - 0x98]
call fcn.100799b0
add esp, 4
lea ecx, [ebp - 0x68]
mov byte [ebp - 4], 0xc
push ecx
push eax
push dword [ebp - 0x2d]
lea ecx, [ebp - 0x80]
call fcn.1007b670
sub esp, 0x18
mov byte [ebp - 4], 0xd
mov ecx, esp
mov dword [ebp - 0x30], esp
lea edx, [ebp - 0x80]
push 0x100b48e0
call fcn.100799b0
add esp, 4
mov byte [ebp - 4], 0xe
mov eax, dword [esi + 0x213c]
mov dword [ebp - 0x20], 0xd3ec54e6
mov dword [ebp - 0x1c], 0x38839fa
mov dword [ebp - 0x18], 0xdca349e8
mov word [ebp - 0x14], 0x36f4
mov byte [ebp - 0x12], 0xe9
test al, 1
jne 0x10044b19
or eax, 1
mov dword [esi + 0x213c], eax
mov byte [ebp - 4], 0xf
xorps xmm0, xmm0
movlpd qword [ebp - 0x28], xmm0
mov edx, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x28]
mov byte [esi + 0x36e7], 1
nop dword [eax]
mov al, byte [ebp + ecx - 0x20]
mov byte [ecx + esi + 0x36d8], al
add ecx, 1
adc edx, 0
jne 0x10044b08
cmp ecx, 0xf
jb 0x10044af0
push 0x10096ec0
call fcn.1007d027
add esp, 4
mov byte [ebp - 4], 0xe
lea edi, [esi + 0x36d8]
mov ecx, edi
call fcn.1006f7d0
sub esp, 0x18
mov ecx, edi
mov edx, esp
lea ebx, [ecx + 1]
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0xf
mov byte [edx], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10044b41
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10079810
mov ecx, dword [0x100bed98]
mov eax, dword [ecx]
mov byte [ebp - 4], 0xd
call dword [eax + 4]
mov byte [ebp - 4], 0xc
mov edx, dword [ebp - 0x6c]
cmp edx, 0x10
jb 0x10044b9a
mov ecx, dword [ebp - 0x80]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10044b90
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10044c78
push edx
push ecx
call fcn.1007cf70
add esp, 8
mov byte [ebp - 4], 0xb
mov edx, dword [ebp - 0x84]
mov dword [ebp - 0x70], 0
mov dword [ebp - 0x6c], 0xf
mov byte [ebp - 0x80], 0
cmp edx, 0x10
jb 0x10044bea
mov ecx, dword [ebp - 0x98]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10044be0
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10044c78
push edx
push ecx
call fcn.1007cf70
add esp, 8
mov byte [ebp - 4], 9
mov edx, dword [ebp - 0x3c]
mov dword [ebp - 0x88], 0
mov dword [ebp - 0x84], 0xf
mov byte [ebp - 0x98], 0
cmp edx, 0x10
jb 0x10044c39
mov ecx, dword [ebp - 0x50]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10044c2f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10044c78
push edx
push ecx
call fcn.1007cf70
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x54]
mov dword [ebp - 0x40], 0
mov dword [ebp - 0x3c], 0xf
mov byte [ebp - 0x50], 0
cmp edx, 0x10
jb 0x10044c88
mov ecx, dword [ebp - 0x68]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10044c7e
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x10044c7e
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.1007cf70
add esp, 8
mov ecx, dword [0x100bac08]
mov edx, 0x100b4898
cmp dword [0x100b48ac], 0x10
push 0x100bbdd0
cmovae edx, dword [0x100b4898]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x10046c29
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0xa14]
mov dword [ebp - 0x18], 0xc3460cfd
push 0x100bbdd0
push 0
push 0
test al, 1
jne 0x10044d2c
or eax, 1
mov dword [esi + 0xa14], eax
mov dword [ebp - 4], 0x10
xorps xmm0, xmm0
movlpd qword [ebp - 0x28], xmm0
mov edx, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x28]
mov byte [esi + 0x1970], 1
nop
mov al, byte [ebp + ecx - 0x18]
mov byte [ecx + esi + 0x196c], al
add ecx, 1
adc edx, 0
jne 0x10044d18
cmp ecx, 4
jb 0x10044d00
push 0x10096d30
call fcn.1007d027
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x196c]
mov ecx, edi
call fcn.1006f5f0
mov ecx, edi
mov dword [ebp - 0x58], 0
mov dword [ebp - 0x54], 0xf
mov byte [ebp - 0x68], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10044d50
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x68]
call fcn.10079810
mov dword [ebp - 4], 0x11
mov eax, dword [esi + 0x49c]
mov dword [ebp - 0x38], 0xaa0b06f4
mov dword [ebp - 0x34], 0x1832618a
mov dword [ebp - 0x30], 0xa64405ab
mov word [ebp - 0x2c], 0x1798
test al, 1
jne 0x10044dda
or eax, 1
mov dword [esi + 0x49c], eax
mov byte [ebp - 4], 0x12
xorps xmm0, xmm0
movlpd qword [ebp - 0x28], xmm0
mov edx, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x28]
mov byte [esi + 0x1ea6], 1
mov al, byte [ebp + ecx - 0x38]
mov byte [ecx + esi + 0x1e98], al
add ecx, 1
adc edx, 0
jne 0x10044dc9
cmp ecx, 0xe
jb 0x10044db1
push 0x10096d80
call fcn.1007d027
add esp, 4
mov byte [ebp - 4], 0x11
lea edi, [esi + 0x1e98]
mov ecx, edi
call fcn.1006f650
mov ecx, edi
mov dword [ebp - 0x40], 0
mov dword [ebp - 0x3c], 0xf
mov byte [ebp - 0x50], 0
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10044e00
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x50]
call fcn.10079810
push 0x100b4880
lea edx, [ebp - 0x50]
mov byte [ebp - 4], 0x13
lea ecx, [ebp - 0x98]
call fcn.100799b0
add esp, 4
lea ecx, [ebp - 0x68]
mov byte [ebp - 4], 0x14
push ecx
push eax
push dword [ebp - 0x2d]
lea ecx, [ebp - 0x80]
call fcn.1007b670
sub esp, 0x18
mov byte [ebp - 4], 0x15
mov ecx, esp
mov dword [ebp - 0x30], esp
lea edx, [ebp - 0x80]
push 0x100b48e0
call fcn.100799b0
add esp, 4
mov byte [ebp - 4], 0x16
mov eax, dword [esi + 0x4018]
mov dword [ebp - 0x20], 0xaf1a08b0
mov dword [ebp - 0x1c], 0x476675c4
mov dword [ebp - 0x18], 0xa05515be
mov word [ebp - 0x14], 0x7aca
mov byte [ebp - 0x12], 7
test al, 1
jne 0x10044ed9
or eax, 1
mov dword [esi + 0x4018], eax
mov byte [ebp - 4], 0x17
xorps xmm0, xmm0
movlpd qword [ebp - 0x28], xmm0
mov edx, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x28]
mov byte [esi + 0x3df3], 1
nop dword [eax]
mov al, byte [ebp + ecx - 0x20]
mov byte [ecx + esi + 0x3de4], al
add ecx, 1
adc edx, 0
jne 0x10044ec8
cmp ecx, 0xf
jb 0x10044eb0
push 0x10096dd0
call fcn.1007d027
add esp, 4
mov byte [ebp - 4], 0x16
lea edi, [esi + 0x3de4]
mov ecx, edi
call fcn.1006f6b0
sub esp, 0x18
mov ecx, edi
mov edx, esp
lea ebx, [ecx + 1]
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0xf
mov byte [edx], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10044f01
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10079810
mov ecx, dword [0x100bed98]
mov eax, dword [ecx]
mov byte [ebp - 4], 0x15
call dword [eax + 4]
mov byte [ebp - 4], 0x14
mov edx, dword [ebp - 0x6c]
cmp edx, 0x10
jb 0x10044f5a
mov ecx, dword [ebp - 0x80]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10044f50
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10045038
push edx
push ecx
call fcn.1007cf70
add esp, 8
mov byte [ebp - 4], 0x13
mov edx, dword [ebp - 0x84]
mov dword [ebp - 0x70], 0
mov dword [ebp - 0x6c], 0xf
mov byte [ebp - 0x80], 0
cmp edx, 0x10
jb 0x10044faa
mov ecx, dword [ebp - 0x98]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10044fa0
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10045038
push edx
push ecx
call fcn.1007cf70
add esp, 8
mov byte [ebp - 4], 0x11
mov edx, dword [ebp - 0x3c]
mov dword [ebp - 0x88], 0
mov dword [ebp - 0x84], 0xf
mov byte [ebp - 0x98], 0
cmp edx, 0x10
jb 0x10044ff9
mov ecx, dword [ebp - 0x50]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10044fef
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10045038
push edx
push ecx
call fcn.1007cf70
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x54]
mov dword [ebp - 0x40], 0
mov dword [ebp - 0x3c], 0xf
mov byte [ebp - 0x50], 0
cmp edx, 0x10
jb 0x10045048
mov ecx, dword [ebp - 0x68]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1004503e
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x1004503e
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.1007cf70
add esp, 8
mov ecx, dword [0x100bac08]
mov edx, 0x100b4898
cmp dword [0x100b48ac], 0x10
push 0x100bbdd0
cmovae edx, dword [0x100b4898]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x10046c29
mov ecx, 0x100bbdd0
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10045080
sub ecx, edx
cmp ecx, 0x20
jae 0x10045097
cmp ecx, 1
ja 0x10046c29
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x11b4]
mov dword [ebp - 0x34], 0xb3f7d59d
mov dword [ebp - 0x30], 0x2c2e195a
mov byte [ebp - 0x2c], 0xf5
push 0x100bbdd0
test al, 1
jne 0x1004511c
or eax, 1
mov dword [esi + 0x11b4], eax
mov dword [ebp - 4], 0x18
xorps xmm0, xmm0
movlpd qword [ebp - 0x28], xmm0
mov edx, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x28]
mov byte [esi + 0x2b5], 1
nop dword [eax + eax]
mov al, byte [ebp + ecx - 0x34]
mov byte [ecx + esi + 0x2ac], al
add ecx, 1
adc edx, 0
jne 0x10045108
cmp ecx, 9
jb 0x100450f0
push 0x10096bf0
call fcn.1007d027
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x2ac]
mov ecx, edi
call fcn.1006f470
sub esp, 0x18
mov ecx, edi
mov edx, esp
mov dword [ebp - 0x30], esp
lea ebx, [ecx + 1]
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0xf
mov byte [edx], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10045147
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10079810
mov dword [ebp - 4], 0x19
mov eax, dword [esi + 0x2350]
mov dword [ebp - 0x18], 0xc3becad3
test al, 1
jne 0x100451c9
or eax, 1
mov dword [esi + 0x2350], eax
mov byte [ebp - 4], 0x1a
xorps xmm0, xmm0
movlpd qword [ebp - 0x28], xmm0
mov edx, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x28]
mov byte [esi + 0x28dc], 1
nop dword [eax]
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x18]
mov byte [ecx + esi + 0x28d8], al
add ecx, 1
adc edx, 0
jne 0x100451b8
cmp ecx, 4
jb 0x100451a0
push 0x10096c40
call fcn.1007d027
add esp, 4
mov byte [ebp - 4], 0x19
lea edi, [esi + 0x28d8]
mov ecx, edi
call fcn.1006f4d0
mov ecx, edi
mov dword [ebp - 0xa0], 0
mov dword [ebp - 0x9c], 0xf
mov byte [ebp - 0xb0], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100451f6
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0xb0]
call fcn.10079810
mov byte [ebp - 4], 0x1b
mov eax, dword [esi + 0x4294]
mov dword [ebp - 0x20], 0xaaf3c0da
mov dword [ebp - 0x1c], 0x2c345506
mov dword [ebp - 0x18], 0xa6bcc385
mov word [ebp - 0x14], 0x2314
test al, 1
jne 0x10045289
or eax, 1
mov dword [esi + 0x4294], eax
mov byte [ebp - 4], 0x1c
xorps xmm0, xmm0
movlpd qword [ebp - 0x28], xmm0
mov edx, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x28]
mov byte [esi + 0x4dfa], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x20]
mov byte [ecx + esi + 0x4dec], al
add ecx, 1
adc edx, 0
jne 0x10045278
cmp ecx, 0xe
jb 0x10045260
push 0x10096c90
call fcn.1007d027
add esp, 4
mov byte [ebp - 4], 0x1b
lea edi, [esi + 0x4dec]
mov ecx, edi
call fcn.1006f530
mov ecx, edi
mov dword [ebp - 0x58], 0
mov dword [ebp - 0x54], 0xf
mov byte [ebp - 0x68], 0
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100452b0
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x68]
call fcn.10079810
push 0x100b44ac
lea edx, [ebp - 0x68]
mov byte [ebp - 4], 0x1d
lea ecx, [ebp - 0x98]
call fcn.100799b0
add esp, 4
lea ecx, [ebp - 0xb0]
mov byte [ebp - 4], 0x1e
push ecx
push eax
push dword [ebp - 0x2d]
lea ecx, [ebp - 0x80]
call fcn.1007b670
sub esp, 0x18
mov byte [ebp - 4], 0x1f
mov ecx, esp
mov dword [ebp - 0x18], esp
lea edx, [ebp - 0x80]
push 0x100b48e0
call fcn.100799b0
add esp, 4
mov byte [ebp - 4], 0x20
mov eax, dword [esi + 0x40f0]
mov dword [ebp - 0x48], 0xafe2ce9e
mov dword [ebp - 0x44], 0x73604148
mov dword [ebp - 0x40], 0xa0add390
mov word [ebp - 0x3c], 0x4e46
mov byte [ebp - 0x3a], 1
test al, 1
jne 0x10045389
or eax, 1
mov dword [esi + 0x40f0], eax
mov byte [ebp - 4], 0x21
xorps xmm0, xmm0
movlpd qword [ebp - 0x28], xmm0
mov edx, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x28]
mov byte [esi + 0x241b], 1
nop
mov al, byte [ebp + ecx - 0x48]
mov byte [ecx + esi + 0x240c], al
add ecx, 1
adc edx, 0
jne 0x10045378
cmp ecx, 0xf
jb 0x10045360
push 0x10096ce0
call fcn.1007d027
add esp, 4
mov byte [ebp - 4], 0x20
lea edi, [esi + 0x240c]
mov ecx, edi
call fcn.1006f590
sub esp, 0x18
mov ecx, edi
mov edx, esp
lea ebx, [ecx + 1]
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0xf
mov byte [edx], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100453b1
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10079810
mov ecx, dword [0x100bed98]
mov eax, dword [ecx]
mov byte [ebp - 4], 0x25
call dword [eax]
mov byte [ebp - 4], 0x24
mov edx, dword [ebp - 0x6c]
cmp edx, 0x10
jb 0x10045409
mov ecx, dword [ebp - 0x80]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100453ff
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100454ed
push edx
push ecx
call fcn.1007cf70
add esp, 8
mov byte [ebp - 4], 0x23
mov edx, dword [ebp - 0x84]
mov dword [ebp - 0x70], 0
mov dword [ebp - 0x6c], 0xf
mov byte [ebp - 0x80], 0
cmp edx, 0x10
jb 0x10045459
mov ecx, dword [ebp - 0x98]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1004544f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100454ed
push edx
push ecx
call fcn.1007cf70
add esp, 8
mov byte [ebp - 4], 0x22
mov edx, dword [ebp - 0x54]
mov dword [ebp - 0x88], 0
mov dword [ebp - 0x84], 0xf
mov byte [ebp - 0x98], 0
cmp edx, 0x10
jb 0x100454a8
mov ecx, dword [ebp - 0x68]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1004549e
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100454ed
push edx
push ecx
call fcn.1007cf70
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x9c]
mov dword [ebp - 0x58], 0
mov dword [ebp - 0x54], 0xf
mov byte [ebp - 0x68], 0
cmp edx, 0x10
jb 0x100454fd
mov ecx, dword [ebp - 0xb0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100454f3
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x100454f3
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.1007cf70
add esp, 8
mov ecx, dword [0x100bac08]
mov edx, 0x100b4898
cmp dword [0x100b48ac], 0x10
push 0x100bbdd0
cmovae edx, dword [0x100b4898]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x10046c29
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x2fc8]
mov dword [ebp - 0x34], 0x1fa34d7b
mov dword [ebp - 0x30], 0x6cd88d9c
mov byte [ebp - 0x2c], 0x13
push 0x100bbdd0
test al, 1
jne 0x100455ac
or eax, 1
mov dword [esi + 0x2fc8], eax
mov dword [ebp - 4], 0x26
xorps xmm0, xmm0
movlpd qword [ebp - 0x28], xmm0
mov edx, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x28]
mov byte [esi + 0x4cf5], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x34]
mov byte [esi + ecx + 0x4cec], al
add ecx, 1
adc edx, 0
jne 0x10045598
cmp ecx, 9
jb 0x10045580
push 0x10096ab0
call fcn.1007d027
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x4cec]
mov ecx, edi
call fcn.1006f2f0
sub esp, 0x18
mov ecx, edi
mov edx, esp
mov dword [ebp - 0x24], esp
lea ebx, [ecx + 1]
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0xf
mov byte [edx], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100455d7
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10079810
mov dword [ebp - 4], 0x27
mov eax, dword [esi + 0x1aac]
mov dword [ebp - 0x18], 0x6fea5235
test al, 1
jne 0x10045659
or eax, 1
mov dword [esi + 0x1aac], eax
mov byte [ebp - 4], 0x28
xorps xmm0, xmm0
movlpd qword [ebp - 0x34], xmm0
mov edx, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x34]
mov byte [esi + 0x804], 1
nop dword [eax]
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x18]
mov byte [esi + ecx + 0x800], al
add ecx, 1
adc edx, 0
jne 0x10045648
cmp ecx, 4
jb 0x10045630
push 0x10096b00
call fcn.1007d027
add esp, 4
mov byte [ebp - 4], 0x27
lea edi, [esi + 0x800]
mov ecx, edi
call fcn.1006f350
mov ecx, edi
mov dword [ebp - 0xa0], 0
mov dword [ebp - 0x9c], 0xf
mov byte [ebp - 0xb0], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10045686
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0xb0]
call fcn.10079810
mov byte [ebp - 4], 0x29
mov eax, dword [esi + 0x2788]
mov dword [ebp - 0x20], 0x6a7583c
mov dword [ebp - 0x1c], 0x6cc2c1c0
mov dword [ebp - 0x18], 0xae85b63
mov word [ebp - 0x14], 0xb7d2
test al, 1
jne 0x10045719
or eax, 1
mov dword [esi + 0x2788], eax
mov byte [ebp - 4], 0x2a
xorps xmm0, xmm0
movlpd qword [ebp - 0x34], xmm0
mov edx, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x34]
mov byte [esi + 0x3dce], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x20]
mov byte [esi + ecx + 0x3dc0], al
add ecx, 1
adc edx, 0
jne 0x10045708
cmp ecx, 0xe
jb 0x100456f0
push 0x10096b50
call fcn.1007d027
add esp, 4
mov byte [ebp - 4], 0x29
lea edi, [esi + 0x3dc0]
mov ecx, edi
call fcn.1006f3b0
mov ecx, edi
mov dword [ebp - 0x58], 0
mov dword [ebp - 0x54], 0xf
mov byte [ebp - 0x68], 0
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10045740
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x68]
call fcn.10079810
push 0x100b4698
lea edx, [ebp - 0x68]
mov byte [ebp - 4], 0x2b
lea ecx, [ebp - 0x98]
call fcn.100799b0
add esp, 4
lea ecx, [ebp - 0xb0]
mov byte [ebp - 4], 0x2c
push ecx
push eax
push dword [ebp - 0x24]
lea ecx, [ebp - 0x80]
call fcn.1007b670
sub esp, 0x18
mov byte [ebp - 4], 0x2d
mov ecx, esp
mov dword [ebp - 0x30], esp
lea edx, [ebp - 0x80]
push 0x100b48e0
call fcn.100799b0
add esp, 4
mov byte [ebp - 4], 0x2e
mov eax, dword [esi + 0xbac]
mov dword [ebp - 0x48], 0x3b65678
mov dword [ebp - 0x44], 0x3396d58e
mov dword [ebp - 0x40], 0xcf94b76
mov word [ebp - 0x3c], 0xda80
mov byte [ebp - 0x3a], 0xf7
test al, 1
jne 0x10045819
or eax, 1
mov dword [esi + 0xbac], eax
mov byte [ebp - 4], 0x2f
xorps xmm0, xmm0
movlpd qword [ebp - 0x1c], xmm0
mov edx, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x1c]
mov byte [esi + 0x2f37], 1
nop
mov al, byte [ebp + ecx - 0x48]
mov byte [esi + ecx + 0x2f28], al
add ecx, 1
adc edx, 0
jne 0x10045808
cmp ecx, 0xf
jb 0x100457f0
push 0x10096ba0
call fcn.1007d027
add esp, 4
mov byte [ebp - 4], 0x2e
lea edi, [esi + 0x2f28]
mov ecx, edi
call fcn.1006f410
sub esp, 0x18
mov ecx, edi
mov edx, esp
lea ebx, [ecx + 1]
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0xf
mov byte [edx], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10045841
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10079810
mov ecx, dword [0x100bed98]
mov eax, dword [ecx]
mov byte [ebp - 4], 0x33
call dword [eax]
mov byte [ebp - 4], 0x32
mov edx, dword [ebp - 0x6c]
cmp edx, 0x10
jb 0x10045899
mov ecx, dword [ebp - 0x80]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1004588f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1004597d
push edx
push ecx
call fcn.1007cf70
add esp, 8
mov byte [ebp - 4], 0x31
mov edx, dword [ebp - 0x84]
mov dword [ebp - 0x70], 0
mov dword [ebp - 0x6c], 0xf
mov byte [ebp - 0x80], 0
cmp edx, 0x10
jb 0x100458e9
mov ecx, dword [ebp - 0x98]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100458df
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1004597d
push edx
push ecx
call fcn.1007cf70
add esp, 8
mov byte [ebp - 4], 0x30
mov edx, dword [ebp - 0x54]
mov dword [ebp - 0x88], 0
mov dword [ebp - 0x84], 0xf
mov byte [ebp - 0x98], 0
cmp edx, 0x10
jb 0x10045938
mov ecx, dword [ebp - 0x68]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1004592e
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1004597d
push edx
push ecx
call fcn.1007cf70
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x9c]
mov dword [ebp - 0x58], 0
mov dword [ebp - 0x54], 0xf
mov byte [ebp - 0x68], 0
cmp edx, 0x10
jb 0x1004598d
mov ecx, dword [ebp - 0xb0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10045983
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x10045983
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.1007cf70
add esp, 8
mov ecx, dword [0x100bac08]
mov edx, 0x100b4898
cmp dword [0x100b48ac], 0x10
push 0x100bbdd0
cmovae edx, dword [0x100b4898]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x10046c29
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x1f80]
mov dword [ebp - 0x34], 0xfb394bd5
mov dword [ebp - 0x30], 0xf026dd92
mov byte [ebp - 0x2c], 0xbd
push 0x100bbdd0
test al, 1
jne 0x10045a3c
or eax, 1
mov dword [esi + 0x1f80], eax
mov dword [ebp - 4], 0x34
xorps xmm0, xmm0
movlpd qword [ebp - 0x28], xmm0
mov edx, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x28]
mov byte [esi + 0x3001], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x34]
mov byte [esi + ecx + 0x2ff8], al
add ecx, 1
adc edx, 0
jne 0x10045a28
cmp ecx, 9
jb 0x10045a10
push 0x10096970
call fcn.1007d027
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x2ff8]
mov ecx, edi
call fcn.1006f170
sub esp, 0x18
mov ecx, edi
mov edx, esp
mov dword [ebp - 0x24], esp
lea ebx, [ecx + 1]
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0xf
mov byte [edx], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10045a67
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10079810
mov dword [ebp - 4], 0x35
mov eax, dword [esi + 0x3ba0]
mov dword [ebp - 0x18], 0x8b70549b
test al, 1
jne 0x10045ae9
or eax, 1
mov dword [esi + 0x3ba0], eax
mov byte [ebp - 4], 0x36
xorps xmm0, xmm0
movlpd qword [ebp - 0x34], xmm0
mov edx, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x34]
mov byte [esi + 0x1600], 1
nop dword [eax]
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x18]
mov byte [esi + ecx + 0x15fc], al
add ecx, 1
adc edx, 0
jne 0x10045ad8
cmp ecx, 4
jb 0x10045ac0
push 0x100969c0
call fcn.1007d027
add esp, 4
mov byte [ebp - 4], 0x35
lea edi, [esi + 0x15fc]
mov ecx, edi
call fcn.1006f1d0
mov ecx, edi
mov dword [ebp - 0xa0], 0
mov dword [ebp - 0x9c], 0xf
mov byte [ebp - 0xb0], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10045b16
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0xb0]
call fcn.10079810
mov byte [ebp - 4], 0x37
mov eax, dword [esi + 0xff8]
mov dword [ebp - 0x20], 0xe23d5e92
mov dword [ebp - 0x1c], 0xf03c91ce
mov dword [ebp - 0x18], 0xee725dcd
mov word [ebp - 0x14], 0xe7dc
test al, 1
jne 0x10045ba9
or eax, 1
mov dword [esi + 0xff8], eax
mov byte [ebp - 4], 0x38
xorps xmm0, xmm0
movlpd qword [ebp - 0x34], xmm0
mov edx, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x34]
mov byte [esi + 0x35ba], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x20]
mov byte [esi + ecx + 0x35ac], al
add ecx, 1
adc edx, 0
jne 0x10045b98
cmp ecx, 0xe
jb 0x10045b80
push 0x10096a10
call fcn.1007d027
add esp, 4
mov byte [ebp - 4], 0x37
lea edi, [esi + 0x35ac]
mov ecx, edi
call fcn.1006f230
mov ecx, edi
mov dword [ebp - 0x58], 0
mov dword [ebp - 0x54], 0xf
mov byte [ebp - 0x68], 0
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10045bd0
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x68]
call fcn.10079810
push 0x100b4880
lea edx, [ebp - 0x68]
mov byte [ebp - 4], 0x39
lea ecx, [ebp - 0x98]
call fcn.100799b0
add esp, 4
lea ecx, [ebp - 0xb0]
mov byte [ebp - 4], 0x3a
push ecx
push eax
push dword [ebp - 0x24]
lea ecx, [ebp - 0x80]
call fcn.1007b670
sub esp, 0x18
mov byte [ebp - 4], 0x3b
mov ecx, esp
mov dword [ebp - 0x30], esp
lea edx, [ebp - 0x80]
push 0x100b48e0
call fcn.100799b0
add esp, 4
mov byte [ebp - 4], 0x3c
mov eax, dword [esi + 0x3a40]
mov dword [ebp - 0x48], 0xe72c50d6
mov dword [ebp - 0x44], 0xaf688580
mov dword [ebp - 0x40], 0xe8634dd8
mov word [ebp - 0x3c], 0x8a8e
mov byte [ebp - 0x3a], 9
test al, 1
jne 0x10045ca9
or eax, 1
mov dword [esi + 0x3a40], eax
mov byte [ebp - 4], 0x3d
xorps xmm0, xmm0
movlpd qword [ebp - 0x1c], xmm0
mov edx, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x1c]
mov byte [esi + 0x3183], 1
nop
mov al, byte [ebp + ecx - 0x48]
mov byte [esi + ecx + 0x3174], al
add ecx, 1
adc edx, 0
jne 0x10045c98
cmp ecx, 0xf
jb 0x10045c80
push 0x10096a60
call fcn.1007d027
add esp, 4
mov byte [ebp - 4], 0x3c
lea edi, [esi + 0x3174]
mov ecx, edi
call fcn.1006f290
sub esp, 0x18
mov ecx, edi
mov edx, esp
lea ebx, [ecx + 1]
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0xf
mov byte [edx], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10045cd1
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10079810
mov ecx, dword [0x100bed98]
mov eax, dword [ecx]
mov byte [ebp - 4], 0x41
call dword [eax]
mov byte [ebp - 4], 0x40
mov edx, dword [ebp - 0x6c]
cmp edx, 0x10
jb 0x10045d29
mov ecx, dword [ebp - 0x80]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10045d1f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10045e0d
push edx
push ecx
call fcn.1007cf70
add esp, 8
mov byte [ebp - 4], 0x3f
mov edx, dword [ebp - 0x84]
mov dword [ebp - 0x70], 0
mov dword [ebp - 0x6c], 0xf
mov byte [ebp - 0x80], 0
cmp edx, 0x10
jb 0x10045d79
mov ecx, dword [ebp - 0x98]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10045d6f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10045e0d
push edx
push ecx
call fcn.1007cf70
add esp, 8
mov byte [ebp - 4], 0x3e
mov edx, dword [ebp - 0x54]
mov dword [ebp - 0x88], 0
mov dword [ebp - 0x84], 0xf
mov byte [ebp - 0x98], 0
cmp edx, 0x10
jb 0x10045dc8
mov ecx, dword [ebp - 0x68]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10045dbe
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10045e0d
push edx
push ecx
call fcn.1007cf70
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x9c]
mov dword [ebp - 0x58], 0
mov dword [ebp - 0x54], 0xf
mov byte [ebp - 0x68], 0
cmp edx, 0x10
jb 0x10045e1d
mov ecx, dword [ebp - 0xb0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10045e13
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x10045e13
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.1007cf70
add esp, 8
mov ecx, dword [0x100bac08]
mov edx, 0x100b4898
cmp dword [0x100b48ac], 0x10
push 0x100bbdd0
cmovae edx, dword [0x100b4898]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x10046c29
mov ecx, 0x100bbdd0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10045e51
sub ecx, edx
cmp ecx, 0x20
jae 0x10045e68
cmp ecx, 1
ja 0x10046c29
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x4578]
mov dword [ebp - 0x28], 0x9b6f65ad
mov dword [ebp - 0x24], 0x152aae77
push 0x100bbdd0
test al, 1
jne 0x10045eec
or eax, 1
mov dword [esi + 0x4578], eax
mov dword [ebp - 4], 0x42
xorps xmm0, xmm0
movlpd qword [ebp - 0x34], xmm0
mov edx, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x34]
mov byte [esi + 0x4378], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x28]
mov byte [esi + ecx + 0x4370], al
add ecx, 1
adc edx, 0
jne 0x10045ed8
cmp ecx, 8
jb 0x10045ec0
push 0x10096830
call fcn.1007d027
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x4370]
mov ecx, edi
call fcn.1006eff0
sub esp, 0x18
mov ecx, edi
mov edx, esp
mov dword [ebp - 0x24], esp
lea ebx, [ecx + 1]
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0xf
mov byte [edx], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10045f17
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10079810
mov dword [ebp - 4], 0x43
mov eax, dword [esi + 0x1f04]
mov dword [ebp - 0x18], 0xeb267ae3
test al, 1
jne 0x10045f99
or eax, 1
mov dword [esi + 0x1f04], eax
mov byte [ebp - 4], 0x44
xorps xmm0, xmm0
movlpd qword [ebp - 0x34], xmm0
mov edx, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x34]
mov byte [esi + 0x4d24], 1
nop dword [eax]
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x18]
mov byte [esi + ecx + 0x4d20], al
add ecx, 1
adc edx, 0
jne 0x10045f88
cmp ecx, 4
jb 0x10045f70
push 0x10096880
call fcn.1007d027
add esp, 4
mov byte [ebp - 4], 0x43
lea edi, [esi + 0x4d20]
mov ecx, edi
call fcn.1006f050
mov ecx, edi
mov dword [ebp - 0xa0], 0
mov dword [ebp - 0x9c], 0xf
mov byte [ebp - 0xb0], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10045fc6
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0xb0]
call fcn.10079810
mov byte [ebp - 4], 0x45
mov eax, dword [esi + 0x4218]
mov dword [ebp - 0x20], 0x826b70ea
mov dword [ebp - 0x1c], 0x3a30f762
mov dword [ebp - 0x18], 0x8e2473b5
mov word [ebp - 0x14], 0x8170
test al, 1
jne 0x10046059
or eax, 1
mov dword [esi + 0x4218], eax
mov byte [ebp - 4], 0x46
xorps xmm0, xmm0
movlpd qword [ebp - 0x34], xmm0
mov edx, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x34]
mov byte [esi + 0x28a6], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x20]
mov byte [ecx + esi + 0x2898], al
add ecx, 1
adc edx, 0
jne 0x10046048
cmp ecx, 0xe
jb 0x10046030
push 0x100968d0
call fcn.1007d027
add esp, 4
mov byte [ebp - 4], 0x45
lea edi, [esi + 0x2898]
mov ecx, edi
call fcn.1006f0b0
mov ecx, edi
mov dword [ebp - 0x58], 0
mov dword [ebp - 0x54], 0xf
mov byte [ebp - 0x68], 0
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10046080
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x68]
call fcn.10079810
push 0x100b44ac
lea edx, [ebp - 0x68]
mov byte [ebp - 4], 0x47
lea ecx, [ebp - 0x98]
call fcn.100799b0
add esp, 4
lea ecx, [ebp - 0xb0]
mov byte [ebp - 4], 0x48
push ecx
push eax
push dword [ebp - 0x24]
lea ecx, [ebp - 0x80]
call fcn.1007b670
sub esp, 0x18
mov byte [ebp - 4], 0x49
mov ecx, esp
mov dword [ebp - 0x30], esp
lea edx, [ebp - 0x80]
push 0x100b48e0
call fcn.100799b0
add esp, 4
mov byte [ebp - 4], 0x4a
mov eax, dword [esi + 0x1144]
mov dword [ebp - 0x48], 0x877a7eae
mov dword [ebp - 0x44], 0x6564e32c
mov dword [ebp - 0x40], 0x883563a0
mov word [ebp - 0x3c], 0xec22
mov byte [ebp - 0x3a], 5
test al, 1
jne 0x10046159
or eax, 1
mov dword [esi + 0x1144], eax
mov byte [ebp - 4], 0x4b
xorps xmm0, xmm0
movlpd qword [ebp - 0x1c], xmm0
mov edx, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x1c]
mov byte [esi + 0x14d7], 1
nop
mov al, byte [ebp + ecx - 0x48]
mov byte [ecx + esi + 0x14c8], al
add ecx, 1
adc edx, 0
jne 0x10046148
cmp ecx, 0xf
jb 0x10046130
push 0x10096920
call fcn.1007d027
add esp, 4
mov byte [ebp - 4], 0x4a
lea edi, [esi + 0x14c8]
mov ecx, edi
call fcn.1006f110
sub esp, 0x18
mov ecx, edi
mov edx, esp
lea ebx, [ecx + 1]
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0xf
mov byte [edx], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10046181
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10079810
mov ecx, dword [0x100bed98]
mov eax, dword [ecx]
mov byte [ebp - 4], 0x4f
call dword [eax]
mov byte [ebp - 4], 0x4e
mov edx, dword [ebp - 0x6c]
cmp edx, 0x10
jb 0x100461d9
mov ecx, dword [ebp - 0x80]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100461cf
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100462bd
push edx
push ecx
call fcn.1007cf70
add esp, 8
mov byte [ebp - 4], 0x4d
mov edx, dword [ebp - 0x84]
mov dword [ebp - 0x70], 0
mov dword [ebp - 0x6c], 0xf
mov byte [ebp - 0x80], 0
cmp edx, 0x10
jb 0x10046229
mov ecx, dword [ebp - 0x98]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1004621f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100462bd
push edx
push ecx
call fcn.1007cf70
add esp, 8
mov byte [ebp - 4], 0x4c
mov edx, dword [ebp - 0x54]
mov dword [ebp - 0x88], 0
mov dword [ebp - 0x84], 0xf
mov byte [ebp - 0x98], 0
cmp edx, 0x10
jb 0x10046278
mov ecx, dword [ebp - 0x68]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1004626e
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100462bd
push edx
push ecx
call fcn.1007cf70
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x9c]
mov dword [ebp - 0x58], 0
mov dword [ebp - 0x54], 0xf
mov byte [ebp - 0x68], 0
cmp edx, 0x10
jb 0x100462cd
mov ecx, dword [ebp - 0xb0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100462c3
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x100462c3
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.1007cf70
add esp, 8
mov ecx, dword [0x100bac08]
mov edx, 0x100b4898
cmp dword [0x100b48ac], 0x10
push 0x100bbdd0
cmovae edx, dword [0x100b4898]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x10046c29
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x3f84]
mov dword [ebp - 0x28], 0xc58d2f77
mov dword [ebp - 0x24], 0xc9685207
push 0x100bbdd0
test al, 1
jne 0x1004637c
or eax, 1
mov dword [esi + 0x3f84], eax
mov dword [ebp - 4], 0x50
xorps xmm0, xmm0
movlpd qword [ebp - 0x34], xmm0
mov edx, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x34]
mov byte [esi + 0x3a8], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x28]
mov byte [ecx + esi + 0x3a0], al
add ecx, 1
adc edx, 0
jne 0x10046368
cmp ecx, 8
jb 0x10046350
push 0x100966f0
call fcn.1007d027
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x3a0]
mov ecx, edi
call fcn.1006ee70
sub esp, 0x18
mov ecx, edi
mov edx, esp
mov dword [ebp - 0x24], esp
lea ebx, [ecx + 1]
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0xf
mov byte [edx], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100463a7
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10079810
mov dword [ebp - 4], 0x51
mov eax, dword [esi + 0x2bd0]
mov dword [ebp - 0x18], 0xb5c43039
test al, 1
jne 0x10046429
or eax, 1
mov dword [esi + 0x2bd0], eax
mov byte [ebp - 4], 0x52
xorps xmm0, xmm0
movlpd qword [ebp - 0x34], xmm0
mov edx, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x34]
mov byte [esi + 0x33b4], 1
nop dword [eax]
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x18]
mov byte [ecx + esi + 0x33b0], al
add ecx, 1
adc edx, 0
jne 0x10046418
cmp ecx, 4
jb 0x10046400
push 0x10096740
call fcn.1007d027
add esp, 4
mov byte [ebp - 4], 0x51
lea edi, [esi + 0x33b0]
mov ecx, edi
call fcn.1006eed0
mov ecx, edi
mov dword [ebp - 0xa0], 0
mov dword [ebp - 0x9c], 0xf
mov byte [ebp - 0xb0], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10046456
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0xb0]
call fcn.10079810
mov byte [ebp - 4], 0x53
mov eax, dword [esi + 0x4c28]
mov dword [ebp - 0x20], 0xdc893a30
mov dword [ebp - 0x1c], 0xe6720b12
mov dword [ebp - 0x18], 0xd0c6396f
mov word [ebp - 0x14], 0x7d00
test al, 1
jne 0x100464e9
or eax, 1
mov dword [esi + 0x4c28], eax
mov byte [ebp - 4], 0x54
xorps xmm0, xmm0
movlpd qword [ebp - 0x34], xmm0
mov edx, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x34]
mov byte [esi + 0x1082], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x20]
mov byte [ecx + esi + 0x1074], al
add ecx, 1
adc edx, 0
jne 0x100464d8
cmp ecx, 0xe
jb 0x100464c0
push 0x10096790
call fcn.1007d027
add esp, 4
mov byte [ebp - 4], 0x53
lea edi, [esi + 0x1074]
mov ecx, edi
call fcn.1006ef30
mov ecx, edi
mov dword [ebp - 0x58], 0
mov dword [ebp - 0x54], 0xf
mov byte [ebp - 0x68], 0
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10046510
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x68]
call fcn.10079810
push 0x100b4698
lea edx, [ebp - 0x68]
mov byte [ebp - 4], 0x55
lea ecx, [ebp - 0x98]
call fcn.100799b0
add esp, 4
lea ecx, [ebp - 0xb0]
mov byte [ebp - 4], 0x56
push ecx
push eax
push dword [ebp - 0x24]
lea ecx, [ebp - 0x80]
call fcn.1007b670
sub esp, 0x18
mov byte [ebp - 4], 0x57
mov ecx, esp
mov dword [ebp - 0x30], esp
lea edx, [ebp - 0x80]
push 0x100b48e0
call fcn.100799b0
add esp, 4
mov byte [ebp - 4], 0x58
mov eax, dword [esi + 0x10c4]
mov dword [ebp - 0x48], 0xd9983474
mov dword [ebp - 0x44], 0xb9261f5c
mov dword [ebp - 0x40], 0xd6d7297a
mov word [ebp - 0x3c], 0x1052
mov byte [ebp - 0x3a], 0x47
test al, 1
jne 0x100465e9
or eax, 1
mov dword [esi + 0x10c4], eax
mov byte [ebp - 4], 0x59
xorps xmm0, xmm0
movlpd qword [ebp - 0x1c], xmm0
mov edx, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x1c]
mov byte [esi + 0x4497], 1
nop
mov al, byte [ebp + ecx - 0x48]
mov byte [ecx + esi + 0x4488], al
add ecx, 1
adc edx, 0
jne 0x100465d8
cmp ecx, 0xf
jb 0x100465c0
push 0x100967e0
call fcn.1007d027
add esp, 4
mov byte [ebp - 4], 0x58
lea edi, [esi + 0x4488]
mov ecx, edi
call fcn.1006ef90
sub esp, 0x18
mov ecx, edi
mov edx, esp
lea ebx, [ecx + 1]
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0xf
mov byte [edx], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10046611
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10079810
mov ecx, dword [0x100bed98]
mov eax, dword [ecx]
mov byte [ebp - 4], 0x5d
call dword [eax]
mov byte [ebp - 4], 0x5c
mov edx, dword [ebp - 0x6c]
cmp edx, 0x10
jb 0x10046669
mov ecx, dword [ebp - 0x80]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1004665f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1004674d
push edx
push ecx
call fcn.1007cf70
add esp, 8
mov byte [ebp - 4], 0x5b
mov edx, dword [ebp - 0x84]
mov dword [ebp - 0x70], 0
mov dword [ebp - 0x6c], 0xf
mov byte [ebp - 0x80], 0
cmp edx, 0x10
jb 0x100466b9
mov ecx, dword [ebp - 0x98]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100466af
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1004674d
push edx
push ecx
call fcn.1007cf70
add esp, 8
mov byte [ebp - 4], 0x5a
mov edx, dword [ebp - 0x54]
mov dword [ebp - 0x88], 0
mov dword [ebp - 0x84], 0xf
mov byte [ebp - 0x98], 0
cmp edx, 0x10
jb 0x10046708
mov ecx, dword [ebp - 0x68]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100466fe
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1004674d
push edx
push ecx
call fcn.1007cf70
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x9c]
mov dword [ebp - 0x58], 0
mov dword [ebp - 0x54], 0xf
mov byte [ebp - 0x68], 0
cmp edx, 0x10
jb 0x1004675d
mov ecx, dword [ebp - 0xb0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10046753
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x10046753
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.1007cf70
add esp, 8
mov ecx, dword [0x100bac08]
mov edx, 0x100b4898
cmp dword [0x100b48ac], 0x10
push 0x100bbdd0
cmovae edx, dword [0x100b4898]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x10046c29
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x3200]
mov dword [ebp - 0x28], 0x398de1ab
mov dword [ebp - 0x24], 0x3d8eda91
push 0x100bbdd0
test al, 1
jne 0x1004680c
or eax, 1
mov dword [esi + 0x3200], eax
mov dword [ebp - 4], 0x5e
xorps xmm0, xmm0
movlpd qword [ebp - 0x34], xmm0
mov edx, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x34]
mov byte [esi + 0x2eac], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x28]
mov byte [esi + ecx + 0x2ea4], al
add ecx, 1
adc edx, 0
jne 0x100467f8
cmp ecx, 8
jb 0x100467e0
push 0x100965b0
call fcn.1007d027
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x2ea4]
mov ecx, edi
call fcn.1006ecf0
sub esp, 0x18
mov ecx, edi
mov edx, esp
mov dword [ebp - 0x24], esp
lea ebx, [ecx + 1]
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0xf
mov byte [edx], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10046837
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10079810
mov dword [ebp - 4], 0x5f
mov eax, dword [esi + 0x13f4]
mov dword [ebp - 0x18], 0x49c4fee5
test al, 1
jne 0x100468b9
or eax, 1
mov dword [esi + 0x13f4], eax
mov byte [ebp - 4], 0x60
xorps xmm0, xmm0
movlpd qword [ebp - 0x34], xmm0
mov edx, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x34]
mov byte [esi + 0x3f34], 1
nop dword [eax]
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x18]
mov byte [esi + ecx + 0x3f30], al
add ecx, 1
adc edx, 0
jne 0x100468a8
cmp ecx, 4
jb 0x10046890
push 0x10096600
call fcn.1007d027
add esp, 4
mov byte [ebp - 4], 0x5f
lea edi, [esi + 0x3f30]
mov ecx, edi
call fcn.1006ed50
mov ecx, edi
mov dword [ebp - 0x70], 0
mov dword [ebp - 0x6c], 0xf
mov byte [ebp - 0x80], 0
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100468e0
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x80]
call fcn.10079810
mov byte [ebp - 4], 0x61
mov eax, dword [esi + 0x4e10]
mov dword [ebp - 0x20], 0x2089f4ec
mov dword [ebp - 0x1c], 0x12948384
mov dword [ebp - 0x18], 0x2cc6f7b3
mov word [ebp - 0x14], 0xf596
test al, 1
jne 0x10046969
or eax, 1
mov dword [esi + 0x4e10], eax
mov byte [ebp - 4], 0x62
xorps xmm0, xmm0
movlpd qword [ebp - 0x34], xmm0
mov edx, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x34]
mov byte [esi + 0x1092], 1
nop
mov al, byte [ebp + ecx - 0x20]
mov byte [esi + ecx + 0x1084], al
add ecx, 1
adc edx, 0
jne 0x10046958
cmp ecx, 0xe
jb 0x10046940
push 0x10096650
call fcn.1007d027
add esp, 4
mov byte [ebp - 4], 0x61
lea edi, [esi + 0x1084]
mov ecx, edi
call fcn.1006edb0
mov ecx, edi
mov dword [ebp - 0xa0], 0
mov dword [ebp - 0x9c], 0xf
mov byte [ebp - 0xb0], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10046996
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0xb0]
call fcn.10079810
push 0x100b4880
lea edx, [ebp - 0xb0]
mov byte [ebp - 4], 0x63
lea ecx, [ebp - 0xe0]
call fcn.100799b0
add esp, 4
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 0x64
push ecx
push eax
push dword [ebp - 0x24]
lea ecx, [ebp - 0xc8]
call fcn.1007b670
sub esp, 0x18
mov byte [ebp - 4], 0x65
mov ecx, esp
mov dword [ebp - 0x30], esp
lea edx, [ebp - 0xc8]
push 0x100b48e0
call fcn.100799b0
add esp, 4
mov byte [ebp - 4], 0x66
mov eax, dword [esi + 0x1ae8]
mov dword [ebp - 0x48], 0x2598faa8
mov dword [ebp - 0x44], 0x4dc097ca
mov dword [ebp - 0x40], 0x2ad7e7a6
mov word [ebp - 0x3c], 0x98c4
mov byte [ebp - 0x3a], 0xa1
test al, 1
jne 0x10046a79
or eax, 1
mov dword [esi + 0x1ae8], eax
mov byte [ebp - 4], 0x67
xorps xmm0, xmm0
movlpd qword [ebp - 0x1c], xmm0
mov edx, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x1c]
mov byte [esi + 0x2fe3], 1
nop
mov al, byte [ebp + ecx - 0x48]
mov byte [esi + ecx + 0x2fd4], al
add ecx, 1
adc edx, 0
jne 0x10046a68
cmp ecx, 0xf
jb 0x10046a50
push 0x100966a0
call fcn.1007d027
add esp, 4
mov byte [ebp - 4], 0x66
lea esi, [esi + 0x2fd4]
mov ecx, esi
call fcn.1006ee10
sub esp, 0x18
mov ecx, esi
mov edx, esp
lea edi, [ecx + 1]
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0xf
mov byte [edx], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10046aa1
sub ecx, edi
push ecx
push esi
mov ecx, edx
call fcn.10079810
mov ecx, dword [0x100bed98]
mov eax, dword [ecx]
mov byte [ebp - 4], 0x6b
call dword [eax]
mov byte [ebp - 4], 0x6a
mov edx, dword [ebp - 0xb4]
cmp edx, 0x10
jb 0x10046aff
mov ecx, dword [ebp - 0xc8]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10046af5
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10046bf5
push edx
push ecx
call fcn.1007cf70
add esp, 8
mov byte [ebp - 4], 0x69
mov edx, dword [ebp - 0xcc]
mov dword [ebp - 0xb8], 0
mov dword [ebp - 0xb4], 0xf
mov byte [ebp - 0xc8], 0
cmp edx, 0x10
jb 0x10046b58
mov ecx, dword [ebp - 0xe0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10046b4e
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10046bf5
push edx
push ecx
call fcn.1007cf70
add esp, 8
mov byte [ebp - 4], 0x68
mov edx, dword [ebp - 0x9c]
mov dword [ebp - 0xd0], 0
mov dword [ebp - 0xcc], 0xf
mov byte [ebp - 0xe0], 0
cmp edx, 0x10
jb 0x10046bad
mov ecx, dword [ebp - 0xb0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10046ba3
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10046bf5
push edx
push ecx
call fcn.1007cf70
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x6c]
mov dword [ebp - 0xa0], 0
mov dword [ebp - 0x9c], 0xf
mov byte [ebp - 0xb0], 0
cmp edx, 0x10
jb 0x10046c05
mov ecx, dword [ebp - 0x80]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10046bfb
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x10046bfb
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.1007cf70
add esp, 8
mov ecx, dword [0x100bac08]
mov edx, 0x100b4898
cmp dword [0x100b48ac], 0x10
push 0x100bbdd0
cmovae edx, dword [0x100b4898]
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.1007c649
mov esp, ebp
pop ebp
ret