Function at 0x1002e540
Capabilities:
Contain obfuscated stackstrings
Parse pe header

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1006b854
mov eax, dword fs:[0]
push eax
sub esp, 0xe4
mov eax, dword [0x1009400c]
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 [0x10095bfc]
push 0x100972c8
push 0
push 0
mov esi, dword [eax + ecx*4]
mov dword [ebp - 0x30], 0x5b34763d
mov eax, dword [esi + 0x3d14]
test al, 1
jne 0x1002e5ec
or eax, 1
mov dword [esi + 0x3d14], 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 + 0xf0], 1
nop dword [eax]
mov al, byte [ebp + ecx - 0x30]
mov byte [esi + ecx + 0xec], al
add ecx, 1
adc edx, 0
jne 0x1002e5d8
cmp ecx, 4
jb 0x1002e5c0
push 0x10078ea0
call fcn.10066958
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0xec]
mov ecx, edi
call fcn.1005f320
mov ecx, edi
mov dword [ebp - 0x68], 0
mov dword [ebp - 0x64], 0xf
mov byte [ebp - 0x78], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1002e610
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x78]
call fcn.100636c0
mov dword [ebp - 4], 1
mov eax, dword [esi + 0x384c]
mov dword [ebp - 0x20], 0x32797c34
mov dword [ebp - 0x1c], 0xf4001b76
mov dword [ebp - 0x18], 0x3e367f6b
mov word [ebp - 0x14], 0x6d64
test al, 1
jne 0x1002e69a
or eax, 1
mov dword [esi + 0x384c], 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 + 0x3ff2], 1
mov al, byte [ebp + ecx - 0x20]
mov byte [esi + ecx + 0x3fe4], al
add ecx, 1
adc edx, 0
jne 0x1002e689
cmp ecx, 0xe
jb 0x1002e671
push 0x10078ef0
call fcn.10066958
add esp, 4
mov byte [ebp - 4], 1
lea edi, [esi + 0x3fe4]
mov ecx, edi
call fcn.1005f380
mov ecx, edi
mov dword [ebp - 0x50], 0
mov dword [ebp - 0x4c], 0xf
mov byte [ebp - 0x60], 0
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1002e6c0
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x60]
call fcn.100636c0
push 0x10094e74
lea edx, [ebp - 0x60]
mov byte [ebp - 4], 3
lea ecx, [ebp - 0xa8]
call fcn.10063860
add esp, 4
lea ecx, [ebp - 0x78]
mov byte [ebp - 4], 4
push ecx
push eax
push dword [ebp - 0x2f]
lea ecx, [ebp - 0x90]
call fcn.10064fa0
sub esp, 0x18
mov byte [ebp - 4], 5
mov ecx, esp
mov dword [ebp - 0x30], esp
lea edx, [ebp - 0x90]
push 0x10095294
call fcn.10063860
add esp, 4
mov byte [ebp - 4], 6
mov eax, dword [esi + 0x3204]
mov dword [ebp - 0x48], 0x2b606b6d
mov dword [ebp - 0x44], 0xa8570234
mov dword [ebp - 0x40], 0x36667e35
mov byte [ebp - 0x3c], 0x59
test al, 1
jne 0x1002e799
or eax, 1
mov dword [esi + 0x3204], 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 + 0xe45], 1
nop dword [eax]
mov al, byte [ebp + ecx - 0x48]
mov byte [esi + ecx + 0xe38], al
add ecx, 1
adc edx, 0
jne 0x1002e788
cmp ecx, 0xd
jb 0x1002e770
push 0x10078f40
call fcn.10066958
add esp, 4
mov byte [ebp - 4], 6
lea edi, [esi + 0xe38]
mov ecx, edi
call fcn.1005f3e0
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 0x1002e7c1
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.100636c0
mov ecx, dword [0x10098584]
mov eax, dword [ecx]
mov byte [ebp - 4], 5
call dword [eax + 4]
mov byte [ebp - 4], 4
mov edx, dword [ebp - 0x7c]
cmp edx, 0x10
jb 0x1002e81d
mov ecx, dword [ebp - 0x90]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1002e813
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1002e8fe
push edx
push ecx
call fcn.100668a1
add esp, 8
mov byte [ebp - 4], 3
mov edx, dword [ebp - 0x94]
mov dword [ebp - 0x80], 0
mov dword [ebp - 0x7c], 0xf
mov byte [ebp - 0x90], 0
cmp edx, 0x10
jb 0x1002e870
mov ecx, dword [ebp - 0xa8]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1002e866
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1002e8fe
push edx
push ecx
call fcn.100668a1
add esp, 8
mov byte [ebp - 4], 1
mov edx, dword [ebp - 0x4c]
mov dword [ebp - 0x98], 0
mov dword [ebp - 0x94], 0xf
mov byte [ebp - 0xa8], 0
cmp edx, 0x10
jb 0x1002e8bf
mov ecx, dword [ebp - 0x60]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1002e8b5
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1002e8fe
push edx
push ecx
call fcn.100668a1
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x64]
mov dword [ebp - 0x50], 0
mov dword [ebp - 0x4c], 0xf
mov byte [ebp - 0x60], 0
cmp edx, 0x10
jb 0x1002e90e
mov ecx, dword [ebp - 0x78]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1002e904
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x1002e904
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.100668a1
add esp, 8
mov ecx, dword [0x1009c7a0]
mov edx, 0x1009524c
cmp dword [0x10095260], 0x10
push 0x100972c8
cmovae edx, dword [0x1009524c]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x10030c49
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x1104]
mov dword [ebp - 0x30], 0x7d8cb4ef
push 0x100972c8
push 0
push 0
test al, 1
jne 0x1002e9bc
or eax, 1
mov dword [esi + 0x1104], 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 + 0x21a0], 1
nop dword [eax]
nop dword [eax + eax]
mov al, byte [ebp + ecx - 0x30]
mov byte [esi + ecx + 0x219c], al
add ecx, 1
adc edx, 0
jne 0x1002e9a8
cmp ecx, 4
jb 0x1002e990
push 0x10078db0
call fcn.10066958
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x219c]
mov ecx, edi
call fcn.1005f200
mov ecx, edi
mov dword [ebp - 0x80], 0
mov dword [ebp - 0x7c], 0xf
mov byte [ebp - 0x90], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1002e9e3
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x90]
call fcn.100636c0
mov dword [ebp - 4], 9
mov eax, dword [esi + 0xd70]
mov dword [ebp - 0x20], 0x14c1bee6
mov dword [ebp - 0x1c], 0xb6be7f80
mov dword [ebp - 0x18], 0x188ebdb9
mov word [ebp - 0x14], 0x992
test al, 1
jne 0x1002ea79
or eax, 1
mov dword [esi + 0xd70], 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 + 0x1dae], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x20]
mov byte [ecx + esi + 0x1da0], al
add ecx, 1
adc edx, 0
jne 0x1002ea68
cmp ecx, 0xe
jb 0x1002ea50
push 0x10078e00
call fcn.10066958
add esp, 4
mov byte [ebp - 4], 9
lea edi, [esi + 0x1da0]
mov ecx, edi
call fcn.1005f260
mov ecx, edi
mov dword [ebp - 0x50], 0
mov dword [ebp - 0x4c], 0xf
mov byte [ebp - 0x60], 0
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1002eaa0
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x60]
call fcn.100636c0
push 0x10095064
lea edx, [ebp - 0x60]
mov byte [ebp - 4], 0xb
lea ecx, [ebp - 0xa8]
call fcn.10063860
add esp, 4
lea ecx, [ebp - 0x90]
mov byte [ebp - 4], 0xc
push ecx
push eax
push dword [ebp - 0x3f]
lea ecx, [ebp - 0x78]
call fcn.10064fa0
sub esp, 0x18
mov byte [ebp - 4], 0xd
mov ecx, esp
mov dword [ebp - 0x40], esp
lea edx, [ebp - 0x78]
push 0x10095294
call fcn.10063860
add esp, 4
mov byte [ebp - 4], 0xe
mov eax, dword [esi + 0x3578]
mov dword [ebp - 0x38], 0xdd8a9bf
mov dword [ebp - 0x34], 0xeae966c2
mov dword [ebp - 0x30], 0x10debce7
mov byte [ebp - 0x2c], 0xaf
test al, 1
jne 0x1002eb79
or eax, 1
mov dword [esi + 0x3578], 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 + 0x1fd5], 1
nop dword [eax]
mov al, byte [ebp + ecx - 0x38]
mov byte [ecx + esi + 0x1fc8], al
add ecx, 1
adc edx, 0
jne 0x1002eb68
cmp ecx, 0xd
jb 0x1002eb50
push 0x10078e50
call fcn.10066958
add esp, 4
mov byte [ebp - 4], 0xe
lea edi, [esi + 0x1fc8]
mov ecx, edi
call fcn.1005f2c0
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 0x1002eba1
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.100636c0
mov ecx, dword [0x10098584]
mov eax, dword [ecx]
mov byte [ebp - 4], 0xd
call dword [eax + 4]
mov byte [ebp - 4], 0xc
mov edx, dword [ebp - 0x64]
cmp edx, 0x10
jb 0x1002ebfa
mov ecx, dword [ebp - 0x78]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1002ebf0
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1002ecdb
push edx
push ecx
call fcn.100668a1
add esp, 8
mov byte [ebp - 4], 0xb
mov edx, dword [ebp - 0x94]
mov dword [ebp - 0x68], 0
mov dword [ebp - 0x64], 0xf
mov byte [ebp - 0x78], 0
cmp edx, 0x10
jb 0x1002ec4a
mov ecx, dword [ebp - 0xa8]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1002ec40
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1002ecdb
push edx
push ecx
call fcn.100668a1
add esp, 8
mov byte [ebp - 4], 9
mov edx, dword [ebp - 0x4c]
mov dword [ebp - 0x98], 0
mov dword [ebp - 0x94], 0xf
mov byte [ebp - 0xa8], 0
cmp edx, 0x10
jb 0x1002ec99
mov ecx, dword [ebp - 0x60]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1002ec8f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1002ecdb
push edx
push ecx
call fcn.100668a1
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x7c]
mov dword [ebp - 0x50], 0
mov dword [ebp - 0x4c], 0xf
mov byte [ebp - 0x60], 0
cmp edx, 0x10
jb 0x1002eceb
mov ecx, dword [ebp - 0x90]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1002ece1
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x1002ece1
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.100668a1
add esp, 8
mov ecx, dword [0x1009c7a0]
mov edx, 0x1009524c
cmp dword [0x10095260], 0x10
push 0x100972c8
cmovae edx, dword [0x1009524c]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x10030c49
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x650]
mov dword [ebp - 0x30], 0x219ae41d
push 0x100972c8
push 0
push 0
test al, 1
jne 0x1002ed8d
or eax, 1
mov dword [esi + 0x650], 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 + 0x22cc], 1
mov al, byte [ebp + ecx - 0x30]
mov byte [ecx + esi + 0x22c8], al
add ecx, 1
adc edx, 0
jne 0x1002ed79
cmp ecx, 4
jb 0x1002ed61
push 0x10078cc0
call fcn.10066958
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x22c8]
mov ecx, edi
call fcn.1005f0e0
mov ecx, edi
mov dword [ebp - 0x80], 0
mov dword [ebp - 0x7c], 0xf
mov byte [ebp - 0x90], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1002edb4
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x90]
call fcn.100636c0
mov dword [ebp - 4], 0x11
mov eax, dword [esi + 0x26a0]
mov dword [ebp - 0x20], 0x48d7ee14
mov dword [ebp - 0x1c], 0xd08ee7c0
mov dword [ebp - 0x18], 0x4498ed4b
mov word [ebp - 0x14], 0x91d2
test al, 1
jne 0x1002ee49
or eax, 1
mov dword [esi + 0x26a0], 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 + 0x2d5a], 1
nop dword [eax + eax]
mov al, byte [ebp + ecx - 0x20]
mov byte [ecx + esi + 0x2d4c], al
add ecx, 1
adc edx, 0
jne 0x1002ee38
cmp ecx, 0xe
jb 0x1002ee20
push 0x10078d10
call fcn.10066958
add esp, 4
mov byte [ebp - 4], 0x11
lea edi, [esi + 0x2d4c]
mov ecx, edi
call fcn.1005f140
mov ecx, edi
mov dword [ebp - 0x50], 0
mov dword [ebp - 0x4c], 0xf
mov byte [ebp - 0x60], 0
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1002ee70
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x60]
call fcn.100636c0
push 0x10095234
lea edx, [ebp - 0x60]
mov byte [ebp - 4], 0x13
lea ecx, [ebp - 0xa8]
call fcn.10063860
add esp, 4
lea ecx, [ebp - 0x90]
mov byte [ebp - 4], 0x14
push ecx
push eax
push dword [ebp - 0x3f]
lea ecx, [ebp - 0x78]
call fcn.10064fa0
sub esp, 0x18
mov byte [ebp - 4], 0x15
mov ecx, esp
mov dword [ebp - 0x40], esp
lea edx, [ebp - 0x78]
push 0x10095294
call fcn.10063860
add esp, 4
mov byte [ebp - 4], 0x16
mov eax, dword [esi + 0x1638]
mov dword [ebp - 0x38], 0x51cef94d
mov dword [ebp - 0x34], 0x8cd9fe82
mov dword [ebp - 0x30], 0x4cc8ec15
mov byte [ebp - 0x2c], 0xef
test al, 1
jne 0x1002ef49
or eax, 1
mov dword [esi + 0x1638], 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 + 0x2b79], 1
nop dword [eax]
mov al, byte [ebp + ecx - 0x38]
mov byte [ecx + esi + 0x2b6c], al
add ecx, 1
adc edx, 0
jne 0x1002ef38
cmp ecx, 0xd
jb 0x1002ef20
push 0x10078d60
call fcn.10066958
add esp, 4
mov byte [ebp - 4], 0x16
lea edi, [esi + 0x2b6c]
mov ecx, edi
call fcn.1005f1a0
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 0x1002ef71
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.100636c0
mov ecx, dword [0x10098584]
mov eax, dword [ecx]
mov byte [ebp - 4], 0x15
call dword [eax + 4]
mov byte [ebp - 4], 0x14
mov edx, dword [ebp - 0x64]
cmp edx, 0x10
jb 0x1002efca
mov ecx, dword [ebp - 0x78]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1002efc0
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1002f0ab
push edx
push ecx
call fcn.100668a1
add esp, 8
mov byte [ebp - 4], 0x13
mov edx, dword [ebp - 0x94]
mov dword [ebp - 0x68], 0
mov dword [ebp - 0x64], 0xf
mov byte [ebp - 0x78], 0
cmp edx, 0x10
jb 0x1002f01a
mov ecx, dword [ebp - 0xa8]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1002f010
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1002f0ab
push edx
push ecx
call fcn.100668a1
add esp, 8
mov byte [ebp - 4], 0x11
mov edx, dword [ebp - 0x4c]
mov dword [ebp - 0x98], 0
mov dword [ebp - 0x94], 0xf
mov byte [ebp - 0xa8], 0
cmp edx, 0x10
jb 0x1002f069
mov ecx, dword [ebp - 0x60]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1002f05f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1002f0ab
push edx
push ecx
call fcn.100668a1
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x7c]
mov dword [ebp - 0x50], 0
mov dword [ebp - 0x4c], 0xf
mov byte [ebp - 0x60], 0
cmp edx, 0x10
jb 0x1002f0bb
mov ecx, dword [ebp - 0x90]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1002f0b1
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x1002f0b1
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.100668a1
add esp, 8
mov ecx, dword [0x1009c7a0]
mov edx, 0x1009524c
cmp dword [0x10095260], 0x10
push 0x100972c8
cmovae edx, dword [0x1009524c]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x10030c49
mov ecx, 0x100972c8
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1002f0f0
sub ecx, edx
cmp ecx, 0x20
jae 0x1002f107
cmp ecx, 1
ja 0x10030c49
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x1b9c]
mov dword [ebp - 0x44], 0x3fbb8f3f
mov dword [ebp - 0x40], 0xfea85140
mov byte [ebp - 0x3c], 0x57
push 0x100972c8
test al, 1
jne 0x1002f18c
or eax, 1
mov dword [esi + 0x1b9c], 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 + 0x2c8d], 1
nop dword [eax + eax]
mov al, byte [ebp + ecx - 0x44]
mov byte [ecx + esi + 0x2c84], al
add ecx, 1
adc edx, 0
jne 0x1002f178
cmp ecx, 9
jb 0x1002f160
push 0x10078b80
call fcn.10066958
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x2c84]
mov ecx, edi
call fcn.1005ef60
sub esp, 0x18
mov ecx, edi
mov edx, esp
mov dword [ebp - 0x40], esp
lea ebx, [ecx + 1]
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0xf
mov byte [edx], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1002f1b7
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.100636c0
mov dword [ebp - 4], 0x19
mov eax, dword [esi + 0x654]
mov dword [ebp - 0x30], 0x4ff29071
test al, 1
jne 0x1002f239
or eax, 1
mov dword [esi + 0x654], 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 + 0x31e4], 1
nop dword [eax]
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x30]
mov byte [ecx + esi + 0x31e0], al
add ecx, 1
adc edx, 0
jne 0x1002f228
cmp ecx, 4
jb 0x1002f210
push 0x10078bd0
call fcn.10066958
add esp, 4
mov byte [ebp - 4], 0x19
lea edi, [esi + 0x31e0]
mov ecx, edi
call fcn.1005efc0
mov ecx, edi
mov dword [ebp - 0x80], 0
mov dword [ebp - 0x7c], 0xf
mov byte [ebp - 0x90], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1002f260
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x90]
call fcn.100636c0
mov byte [ebp - 4], 0x1b
mov eax, dword [esi + 0x904]
mov dword [ebp - 0x20], 0x26bf9a78
mov dword [ebp - 0x1c], 0xfeb41d1c
mov dword [ebp - 0x18], 0x2af09927
mov word [ebp - 0x14], 0x6b0e
test al, 1
jne 0x1002f2ea
or eax, 1
mov dword [esi + 0x904], 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 + 0x3976], 1
mov al, byte [ebp + ecx - 0x20]
mov byte [ecx + esi + 0x3968], al
add ecx, 1
adc edx, 0
jne 0x1002f2d9
cmp ecx, 0xe
jb 0x1002f2c1
push 0x10078c20
call fcn.10066958
add esp, 4
mov byte [ebp - 4], 0x1b
lea edi, [esi + 0x3968]
mov ecx, edi
call fcn.1005f020
mov ecx, edi
mov dword [ebp - 0x50], 0
mov dword [ebp - 0x4c], 0xf
mov byte [ebp - 0x60], 0
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1002f310
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x60]
call fcn.100636c0
push 0x10094e74
lea edx, [ebp - 0x60]
mov byte [ebp - 4], 0x1d
lea ecx, [ebp - 0xa8]
call fcn.10063860
add esp, 4
lea ecx, [ebp - 0x90]
mov byte [ebp - 4], 0x1e
push ecx
push eax
push dword [ebp - 0x3f]
lea ecx, [ebp - 0x78]
call fcn.10064fa0
sub esp, 0x18
mov byte [ebp - 4], 0x1f
mov ecx, esp
mov dword [ebp - 0x30], esp
lea edx, [ebp - 0x78]
push 0x10095294
call fcn.10063860
add esp, 4
mov byte [ebp - 4], 0x20
mov eax, dword [esi + 0x3840]
mov dword [ebp - 0x20], 0x3fa68d21
mov dword [ebp - 0x1c], 0xa2e3045e
mov dword [ebp - 0x18], 0x22a09879
mov byte [ebp - 0x14], 0x33
test al, 1
jne 0x1002f3e9
or eax, 1
mov dword [esi + 0x3840], 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 + 0x29a1], 1
nop dword [eax]
mov al, byte [ebp + ecx - 0x20]
mov byte [ecx + esi + 0x2994], al
add ecx, 1
adc edx, 0
jne 0x1002f3d8
cmp ecx, 0xd
jb 0x1002f3c0
push 0x10078c70
call fcn.10066958
add esp, 4
mov byte [ebp - 4], 0x20
lea edi, [esi + 0x2994]
mov ecx, edi
call fcn.1005f080
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 0x1002f411
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.100636c0
mov ecx, dword [0x10098584]
mov eax, dword [ecx]
mov byte [ebp - 4], 0x25
call dword [eax]
mov byte [ebp - 4], 0x24
mov edx, dword [ebp - 0x64]
cmp edx, 0x10
jb 0x1002f469
mov ecx, dword [ebp - 0x78]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1002f45f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1002f54a
push edx
push ecx
call fcn.100668a1
add esp, 8
mov byte [ebp - 4], 0x23
mov edx, dword [ebp - 0x94]
mov dword [ebp - 0x68], 0
mov dword [ebp - 0x64], 0xf
mov byte [ebp - 0x78], 0
cmp edx, 0x10
jb 0x1002f4b9
mov ecx, dword [ebp - 0xa8]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1002f4af
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1002f54a
push edx
push ecx
call fcn.100668a1
add esp, 8
mov byte [ebp - 4], 0x22
mov edx, dword [ebp - 0x4c]
mov dword [ebp - 0x98], 0
mov dword [ebp - 0x94], 0xf
mov byte [ebp - 0xa8], 0
cmp edx, 0x10
jb 0x1002f508
mov ecx, dword [ebp - 0x60]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1002f4fe
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1002f54a
push edx
push ecx
call fcn.100668a1
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x7c]
mov dword [ebp - 0x50], 0
mov dword [ebp - 0x4c], 0xf
mov byte [ebp - 0x60], 0
cmp edx, 0x10
jb 0x1002f55a
mov ecx, dword [ebp - 0x90]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1002f550
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x1002f550
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.100668a1
add esp, 8
mov ecx, dword [0x1009c7a0]
mov edx, 0x1009524c
cmp dword [0x10095260], 0x10
push 0x100972c8
cmovae edx, dword [0x1009524c]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x10030c49
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0xf20]
mov dword [ebp - 0x44], 0x13a16dfb
mov dword [ebp - 0x40], 0x9e6279f6
mov byte [ebp - 0x3c], 0x93
push 0x100972c8
test al, 1
jne 0x1002f60c
or eax, 1
mov dword [esi + 0xf20], 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 + 0x16b1], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x44]
mov byte [ecx + esi + 0x16a8], al
add ecx, 1
adc edx, 0
jne 0x1002f5f8
cmp ecx, 9
jb 0x1002f5e0
push 0x10078a40
call fcn.10066958
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x16a8]
mov ecx, edi
call fcn.1005ede0
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 0x1002f637
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.100636c0
mov dword [ebp - 4], 0x27
mov eax, dword [esi + 0x2014]
mov dword [ebp - 0x30], 0x63e872b5
test al, 1
jne 0x1002f6b9
or eax, 1
mov dword [esi + 0x2014], 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 + 0x1f14], 1
nop dword [eax]
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x30]
mov byte [esi + ecx + 0x1f10], al
add ecx, 1
adc edx, 0
jne 0x1002f6a8
cmp ecx, 4
jb 0x1002f690
push 0x10078a90
call fcn.10066958
add esp, 4
mov byte [ebp - 4], 0x27
lea edi, [esi + 0x1f10]
mov ecx, edi
call fcn.1005ee40
mov ecx, edi
mov dword [ebp - 0x80], 0
mov dword [ebp - 0x7c], 0xf
mov byte [ebp - 0x90], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1002f6e0
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x90]
call fcn.100636c0
mov byte [ebp - 4], 0x29
mov eax, dword [esi + 0x1b98]
mov dword [ebp - 0x20], 0xaa578bc
mov dword [ebp - 0x1c], 0x9e7e35aa
mov dword [ebp - 0x18], 0x6ea7be3
mov word [ebp - 0x14], 0x43b8
test al, 1
jne 0x1002f76a
or eax, 1
mov dword [esi + 0x1b98], 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 + 0x36a], 1
mov al, byte [ebp + ecx - 0x20]
mov byte [esi + ecx + 0x35c], al
add ecx, 1
adc edx, 0
jne 0x1002f759
cmp ecx, 0xe
jb 0x1002f741
push 0x10078ae0
call fcn.10066958
add esp, 4
mov byte [ebp - 4], 0x29
lea edi, [esi + 0x35c]
mov ecx, edi
call fcn.1005eea0
mov ecx, edi
mov dword [ebp - 0x50], 0
mov dword [ebp - 0x4c], 0xf
mov byte [ebp - 0x60], 0
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1002f790
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x60]
call fcn.100636c0
push 0x10095064
lea edx, [ebp - 0x60]
mov byte [ebp - 4], 0x2b
lea ecx, [ebp - 0xa8]
call fcn.10063860
add esp, 4
lea ecx, [ebp - 0x90]
mov byte [ebp - 4], 0x2c
push ecx
push eax
push dword [ebp - 0x24]
lea ecx, [ebp - 0x78]
call fcn.10064fa0
sub esp, 0x18
mov byte [ebp - 4], 0x2d
mov ecx, esp
mov dword [ebp - 0x40], esp
lea edx, [ebp - 0x78]
push 0x10095294
call fcn.10063860
add esp, 4
mov byte [ebp - 4], 0x2e
mov eax, dword [esi + 0x2050]
mov dword [ebp - 0x20], 0x13bc6fe5
mov dword [ebp - 0x1c], 0xc2292ce8
mov dword [ebp - 0x18], 0xeba7abd
mov byte [ebp - 0x14], 0x85
test al, 1
jne 0x1002f869
or eax, 1
mov dword [esi + 0x2050], eax
mov byte [ebp - 4], 0x2f
xorps xmm0, xmm0
movlpd qword [ebp - 0x34], xmm0
mov edx, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x34]
mov byte [esi + 0x1e9d], 1
nop dword [eax]
mov al, byte [ebp + ecx - 0x20]
mov byte [esi + ecx + 0x1e90], al
add ecx, 1
adc edx, 0
jne 0x1002f858
cmp ecx, 0xd
jb 0x1002f840
push 0x10078b30
call fcn.10066958
add esp, 4
mov byte [ebp - 4], 0x2e
lea edi, [esi + 0x1e90]
mov ecx, edi
call fcn.1005ef00
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 0x1002f891
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.100636c0
mov ecx, dword [0x10098584]
mov eax, dword [ecx]
mov byte [ebp - 4], 0x33
call dword [eax]
mov byte [ebp - 4], 0x32
mov edx, dword [ebp - 0x64]
cmp edx, 0x10
jb 0x1002f8e9
mov ecx, dword [ebp - 0x78]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1002f8df
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1002f9ca
push edx
push ecx
call fcn.100668a1
add esp, 8
mov byte [ebp - 4], 0x31
mov edx, dword [ebp - 0x94]
mov dword [ebp - 0x68], 0
mov dword [ebp - 0x64], 0xf
mov byte [ebp - 0x78], 0
cmp edx, 0x10
jb 0x1002f939
mov ecx, dword [ebp - 0xa8]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1002f92f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1002f9ca
push edx
push ecx
call fcn.100668a1
add esp, 8
mov byte [ebp - 4], 0x30
mov edx, dword [ebp - 0x4c]
mov dword [ebp - 0x98], 0
mov dword [ebp - 0x94], 0xf
mov byte [ebp - 0xa8], 0
cmp edx, 0x10
jb 0x1002f988
mov ecx, dword [ebp - 0x60]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1002f97e
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1002f9ca
push edx
push ecx
call fcn.100668a1
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x7c]
mov dword [ebp - 0x50], 0
mov dword [ebp - 0x4c], 0xf
mov byte [ebp - 0x60], 0
cmp edx, 0x10
jb 0x1002f9da
mov ecx, dword [ebp - 0x90]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1002f9d0
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x1002f9d0
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.100668a1
add esp, 8
mov ecx, dword [0x1009c7a0]
mov edx, 0x1009524c
cmp dword [0x10095260], 0x10
push 0x100972c8
cmovae edx, dword [0x1009524c]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x10030c49
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x610]
mov dword [ebp - 0x44], 0x93cde7c5
mov dword [ebp - 0x40], 0x9cd0f588
mov byte [ebp - 0x3c], 0xad
push 0x100972c8
test al, 1
jne 0x1002fa8c
or eax, 1
mov dword [esi + 0x610], 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 + 0x1c95], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x44]
mov byte [esi + ecx + 0x1c8c], al
add ecx, 1
adc edx, 0
jne 0x1002fa78
cmp ecx, 9
jb 0x1002fa60
push 0x10078900
call fcn.10066958
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x1c8c]
mov ecx, edi
call fcn.1005ec60
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 0x1002fab7
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.100636c0
mov dword [ebp - 4], 0x35
mov eax, dword [esi + 0x1114]
mov dword [ebp - 0x30], 0xe384f88b
test al, 1
jne 0x1002fb39
or eax, 1
mov dword [esi + 0x1114], 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 + 0x3a38], 1
nop dword [eax]
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x30]
mov byte [esi + ecx + 0x3a34], al
add ecx, 1
adc edx, 0
jne 0x1002fb28
cmp ecx, 4
jb 0x1002fb10
push 0x10078950
call fcn.10066958
add esp, 4
mov byte [ebp - 4], 0x35
lea edi, [esi + 0x3a34]
mov ecx, edi
call fcn.1005ecc0
mov ecx, edi
mov dword [ebp - 0x80], 0
mov dword [ebp - 0x7c], 0xf
mov byte [ebp - 0x90], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1002fb60
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x90]
call fcn.100636c0
mov byte [ebp - 4], 0x37
mov eax, dword [esi + 0x5f0]
mov dword [ebp - 0x20], 0x8ac9f282
mov dword [ebp - 0x1c], 0x9cccb9d4
mov dword [ebp - 0x18], 0x8686f1dd
mov word [ebp - 0x14], 0xcfc6
test al, 1
jne 0x1002fbea
or eax, 1
mov dword [esi + 0x5f0], 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 + 0x27aa], 1
mov al, byte [ebp + ecx - 0x20]
mov byte [esi + ecx + 0x279c], al
add ecx, 1
adc edx, 0
jne 0x1002fbd9
cmp ecx, 0xe
jb 0x1002fbc1
push 0x100789a0
call fcn.10066958
add esp, 4
mov byte [ebp - 4], 0x37
lea edi, [esi + 0x279c]
mov ecx, edi
call fcn.1005ed20
mov ecx, edi
mov dword [ebp - 0x50], 0
mov dword [ebp - 0x4c], 0xf
mov byte [ebp - 0x60], 0
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1002fc10
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x60]
call fcn.100636c0
push 0x10095234
lea edx, [ebp - 0x60]
mov byte [ebp - 4], 0x39
lea ecx, [ebp - 0xa8]
call fcn.10063860
add esp, 4
lea ecx, [ebp - 0x90]
mov byte [ebp - 4], 0x3a
push ecx
push eax
push dword [ebp - 0x24]
lea ecx, [ebp - 0x78]
call fcn.10064fa0
sub esp, 0x18
mov byte [ebp - 4], 0x3b
mov ecx, esp
mov dword [ebp - 0x40], esp
lea edx, [ebp - 0x78]
push 0x10095294
call fcn.10063860
add esp, 4
mov byte [ebp - 4], 0x3c
mov eax, dword [esi + 0x3ce4]
mov dword [ebp - 0x20], 0x93d0e5db
mov dword [ebp - 0x1c], 0xc09ba096
mov dword [ebp - 0x18], 0x8ed6f083
mov byte [ebp - 0x14], 0xfb
test al, 1
jne 0x1002fce9
or eax, 1
mov dword [esi + 0x3ce4], eax
mov byte [ebp - 4], 0x3d
xorps xmm0, xmm0
movlpd qword [ebp - 0x34], xmm0
mov edx, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x34]
mov byte [esi + 0x24dd], 1
nop dword [eax]
mov al, byte [ebp + ecx - 0x20]
mov byte [esi + ecx + 0x24d0], al
add ecx, 1
adc edx, 0
jne 0x1002fcd8
cmp ecx, 0xd
jb 0x1002fcc0
push 0x100789f0
call fcn.10066958
add esp, 4
mov byte [ebp - 4], 0x3c
lea edi, [esi + 0x24d0]
mov ecx, edi
call fcn.1005ed80
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 0x1002fd11
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.100636c0
mov ecx, dword [0x10098584]
mov eax, dword [ecx]
mov byte [ebp - 4], 0x41
call dword [eax]
mov byte [ebp - 4], 0x40
mov edx, dword [ebp - 0x64]
cmp edx, 0x10
jb 0x1002fd69
mov ecx, dword [ebp - 0x78]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1002fd5f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1002fe4a
push edx
push ecx
call fcn.100668a1
add esp, 8
mov byte [ebp - 4], 0x3f
mov edx, dword [ebp - 0x94]
mov dword [ebp - 0x68], 0
mov dword [ebp - 0x64], 0xf
mov byte [ebp - 0x78], 0
cmp edx, 0x10
jb 0x1002fdb9
mov ecx, dword [ebp - 0xa8]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1002fdaf
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1002fe4a
push edx
push ecx
call fcn.100668a1
add esp, 8
mov byte [ebp - 4], 0x3e
mov edx, dword [ebp - 0x4c]
mov dword [ebp - 0x98], 0
mov dword [ebp - 0x94], 0xf
mov byte [ebp - 0xa8], 0
cmp edx, 0x10
jb 0x1002fe08
mov ecx, dword [ebp - 0x60]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1002fdfe
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1002fe4a
push edx
push ecx
call fcn.100668a1
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x7c]
mov dword [ebp - 0x50], 0
mov dword [ebp - 0x4c], 0xf
mov byte [ebp - 0x60], 0
cmp edx, 0x10
jb 0x1002fe5a
mov ecx, dword [ebp - 0x90]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1002fe50
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x1002fe50
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.100668a1
add esp, 8
mov ecx, dword [0x1009c7a0]
mov edx, 0x1009524c
cmp dword [0x10095260], 0x10
push 0x100972c8
cmovae edx, dword [0x1009524c]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x10030c49
mov ecx, 0x100972c8
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1002fe90
sub ecx, edx
cmp ecx, 0x20
jae 0x1002fea7
cmp ecx, 1
ja 0x10030c49
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0xde4]
mov dword [ebp - 0x28], 0x333121f7
mov dword [ebp - 0x24], 0xd12e6437
push 0x100972c8
test al, 1
jne 0x1002ff2c
or eax, 1
mov dword [esi + 0xde4], 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 + 0x2648], 1
nop dword [eax]
nop dword [eax + eax]
mov al, byte [ebp + ecx - 0x28]
mov byte [esi + ecx + 0x2640], al
add ecx, 1
adc edx, 0
jne 0x1002ff18
cmp ecx, 8
jb 0x1002ff00
push 0x100787c0
call fcn.10066958
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x2640]
mov ecx, edi
call fcn.1005eae0
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 0x1002ff57
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.100636c0
mov dword [ebp - 4], 0x43
mov eax, dword [esi + 0x3ebc]
mov dword [ebp - 0x30], 0x43783eb9
test al, 1
jne 0x1002ffd9
or eax, 1
mov dword [esi + 0x3ebc], 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 + 0x2618], 1
nop dword [eax]
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x30]
mov byte [esi + ecx + 0x2614], al
add ecx, 1
adc edx, 0
jne 0x1002ffc8
cmp ecx, 4
jb 0x1002ffb0
push 0x10078810
call fcn.10066958
add esp, 4
mov byte [ebp - 4], 0x43
lea edi, [esi + 0x2614]
mov ecx, edi
call fcn.1005eb40
mov ecx, edi
mov dword [ebp - 0x80], 0
mov dword [ebp - 0x7c], 0xf
mov byte [ebp - 0x90], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10030000
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x90]
call fcn.100636c0
mov byte [ebp - 4], 0x45
mov eax, dword [esi + 0x3020]
mov dword [ebp - 0x20], 0x2a3534b0
mov dword [ebp - 0x1c], 0xfe323d22
mov dword [ebp - 0x18], 0x267a37ef
mov word [ebp - 0x14], 0x4b30
test al, 1
jne 0x1003008a
or eax, 1
mov dword [esi + 0x3020], 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 + 0x31aa], 1
mov al, byte [ebp + ecx - 0x20]
mov byte [esi + ecx + 0x319c], al
add ecx, 1
adc edx, 0
jne 0x10030079
cmp ecx, 0xe
jb 0x10030061
push 0x10078860
call fcn.10066958
add esp, 4
mov byte [ebp - 4], 0x45
lea edi, [esi + 0x319c]
mov ecx, edi
call fcn.1005eba0
mov ecx, edi
mov dword [ebp - 0x50], 0
mov dword [ebp - 0x4c], 0xf
mov byte [ebp - 0x60], 0
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100300b0
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x60]
call fcn.100636c0
push 0x10094e74
lea edx, [ebp - 0x60]
mov byte [ebp - 4], 0x47
lea ecx, [ebp - 0xa8]
call fcn.10063860
add esp, 4
lea ecx, [ebp - 0x90]
mov byte [ebp - 4], 0x48
push ecx
push eax
push dword [ebp - 0x24]
lea ecx, [ebp - 0x78]
call fcn.10064fa0
sub esp, 0x18
mov byte [ebp - 4], 0x49
mov ecx, esp
mov dword [ebp - 0x40], esp
lea edx, [ebp - 0x78]
push 0x10095294
call fcn.10063860
add esp, 4
mov byte [ebp - 4], 0x4a
mov eax, dword [esi + 0xaf8]
mov dword [ebp - 0x20], 0x332c23e9
mov dword [ebp - 0x1c], 0xa2652460
mov dword [ebp - 0x18], 0x2e2a36b1
mov byte [ebp - 0x14], 0xd
test al, 1
jne 0x10030189
or eax, 1
mov dword [esi + 0xaf8], eax
mov byte [ebp - 4], 0x4b
xorps xmm0, xmm0
movlpd qword [ebp - 0x34], xmm0
mov edx, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x34]
mov byte [esi + 0x3e9d], 1
nop dword [eax]
mov al, byte [ebp + ecx - 0x20]
mov byte [ecx + esi + 0x3e90], al
add ecx, 1
adc edx, 0
jne 0x10030178
cmp ecx, 0xd
jb 0x10030160
push 0x100788b0
call fcn.10066958
add esp, 4
mov byte [ebp - 4], 0x4a
lea edi, [esi + 0x3e90]
mov ecx, edi
call fcn.1005ec00
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 0x100301b1
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.100636c0
mov ecx, dword [0x10098584]
mov eax, dword [ecx]
mov byte [ebp - 4], 0x4f
call dword [eax]
mov byte [ebp - 4], 0x4e
mov edx, dword [ebp - 0x64]
cmp edx, 0x10
jb 0x10030209
mov ecx, dword [ebp - 0x78]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100301ff
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100302ea
push edx
push ecx
call fcn.100668a1
add esp, 8
mov byte [ebp - 4], 0x4d
mov edx, dword [ebp - 0x94]
mov dword [ebp - 0x68], 0
mov dword [ebp - 0x64], 0xf
mov byte [ebp - 0x78], 0
cmp edx, 0x10
jb 0x10030259
mov ecx, dword [ebp - 0xa8]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003024f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100302ea
push edx
push ecx
call fcn.100668a1
add esp, 8
mov byte [ebp - 4], 0x4c
mov edx, dword [ebp - 0x4c]
mov dword [ebp - 0x98], 0
mov dword [ebp - 0x94], 0xf
mov byte [ebp - 0xa8], 0
cmp edx, 0x10
jb 0x100302a8
mov ecx, dword [ebp - 0x60]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003029e
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100302ea
push edx
push ecx
call fcn.100668a1
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x7c]
mov dword [ebp - 0x50], 0
mov dword [ebp - 0x4c], 0xf
mov byte [ebp - 0x60], 0
cmp edx, 0x10
jb 0x100302fa
mov ecx, dword [ebp - 0x90]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100302f0
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x100302f0
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.100668a1
add esp, 8
mov ecx, dword [0x1009c7a0]
mov edx, 0x1009524c
cmp dword [0x10095260], 0x10
push 0x100972c8
cmovae edx, dword [0x1009524c]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x10030c49
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x3114]
mov dword [ebp - 0x28], 0xf74b9ddd
mov dword [ebp - 0x24], 0xffb6ec99
push 0x100972c8
test al, 1
jne 0x100303ac
or eax, 1
mov dword [esi + 0x3114], 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 + 0x9ac], 1
nop dword [eax]
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x28]
mov byte [ecx + esi + 0x9a4], al
add ecx, 1
adc edx, 0
jne 0x10030398
cmp ecx, 8
jb 0x10030380
push 0x10078680
call fcn.10066958
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x9a4]
mov ecx, edi
call fcn.1005e960
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 0x100303d7
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.100636c0
mov dword [ebp - 4], 0x51
mov eax, dword [esi + 0x3a64]
mov dword [ebp - 0x30], 0x87028293
test al, 1
jne 0x10030459
or eax, 1
mov dword [esi + 0x3a64], 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 + 0x32d0], 1
nop dword [eax]
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x30]
mov byte [ecx + esi + 0x32cc], al
add ecx, 1
adc edx, 0
jne 0x10030448
cmp ecx, 4
jb 0x10030430
push 0x100786d0
call fcn.10066958
add esp, 4
mov byte [ebp - 4], 0x51
lea edi, [esi + 0x32cc]
mov ecx, edi
call fcn.1005e9c0
mov ecx, edi
mov dword [ebp - 0x80], 0
mov dword [ebp - 0x7c], 0xf
mov byte [ebp - 0x90], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10030480
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x90]
call fcn.100636c0
mov byte [ebp - 4], 0x53
mov eax, dword [esi + 0x163c]
mov dword [ebp - 0x20], 0xee4f889a
mov dword [ebp - 0x1c], 0xd0aab58c
mov dword [ebp - 0x18], 0xe2008bc5
mov word [ebp - 0x14], 0xc39e
test al, 1
jne 0x1003050a
or eax, 1
mov dword [esi + 0x163c], 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 + 0x50e], 1
mov al, byte [ebp + ecx - 0x20]
mov byte [ecx + esi + 0x500], al
add ecx, 1
adc edx, 0
jne 0x100304f9
cmp ecx, 0xe
jb 0x100304e1
push 0x10078720
call fcn.10066958
add esp, 4
mov byte [ebp - 4], 0x53
lea edi, [esi + 0x500]
mov ecx, edi
call fcn.1005ea20
mov ecx, edi
mov dword [ebp - 0x50], 0
mov dword [ebp - 0x4c], 0xf
mov byte [ebp - 0x60], 0
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10030530
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x60]
call fcn.100636c0
push 0x10095064
lea edx, [ebp - 0x60]
mov byte [ebp - 4], 0x55
lea ecx, [ebp - 0xa8]
call fcn.10063860
add esp, 4
lea ecx, [ebp - 0x90]
mov byte [ebp - 4], 0x56
push ecx
push eax
push dword [ebp - 0x24]
lea ecx, [ebp - 0x78]
call fcn.10064fa0
sub esp, 0x18
mov byte [ebp - 4], 0x57
mov ecx, esp
mov dword [ebp - 0x40], esp
lea edx, [ebp - 0x78]
push 0x10095294
call fcn.10063860
add esp, 4
mov byte [ebp - 4], 0x58
mov eax, dword [esi + 0x2564]
mov dword [ebp - 0x20], 0xf7569fc3
mov dword [ebp - 0x1c], 0x8cfdacce
mov dword [ebp - 0x18], 0xea508a9b
mov byte [ebp - 0x14], 0xa3
test al, 1
jne 0x10030609
or eax, 1
mov dword [esi + 0x2564], eax
mov byte [ebp - 4], 0x59
xorps xmm0, xmm0
movlpd qword [ebp - 0x34], xmm0
mov edx, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x34]
mov byte [esi + 0x1629], 1
nop dword [eax]
mov al, byte [ebp + ecx - 0x20]
mov byte [esi + ecx + 0x161c], al
add ecx, 1
adc edx, 0
jne 0x100305f8
cmp ecx, 0xd
jb 0x100305e0
push 0x10078770
call fcn.10066958
add esp, 4
mov byte [ebp - 4], 0x58
lea edi, [esi + 0x161c]
mov ecx, edi
call fcn.1005ea80
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 0x10030631
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.100636c0
mov ecx, dword [0x10098584]
mov eax, dword [ecx]
mov byte [ebp - 4], 0x5d
call dword [eax]
mov byte [ebp - 4], 0x5c
mov edx, dword [ebp - 0x64]
cmp edx, 0x10
jb 0x10030689
mov ecx, dword [ebp - 0x78]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003067f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003076a
push edx
push ecx
call fcn.100668a1
add esp, 8
mov byte [ebp - 4], 0x5b
mov edx, dword [ebp - 0x94]
mov dword [ebp - 0x68], 0
mov dword [ebp - 0x64], 0xf
mov byte [ebp - 0x78], 0
cmp edx, 0x10
jb 0x100306d9
mov ecx, dword [ebp - 0xa8]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100306cf
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003076a
push edx
push ecx
call fcn.100668a1
add esp, 8
mov byte [ebp - 4], 0x5a
mov edx, dword [ebp - 0x4c]
mov dword [ebp - 0x98], 0
mov dword [ebp - 0x94], 0xf
mov byte [ebp - 0xa8], 0
cmp edx, 0x10
jb 0x10030728
mov ecx, dword [ebp - 0x60]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003071e
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003076a
push edx
push ecx
call fcn.100668a1
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x7c]
mov dword [ebp - 0x50], 0
mov dword [ebp - 0x4c], 0xf
mov byte [ebp - 0x60], 0
cmp edx, 0x10
jb 0x1003077a
mov ecx, dword [ebp - 0x90]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10030770
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x10030770
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.100668a1
add esp, 8
mov ecx, dword [0x1009c7a0]
mov edx, 0x1009524c
cmp dword [0x10095260], 0x10
push 0x100972c8
cmovae edx, dword [0x1009524c]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x10030c49
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x1eec]
mov dword [ebp - 0x28], 0x1ab2dcb
mov dword [ebp - 0x24], 0x7b64e2eb
push 0x100972c8
test al, 1
jne 0x1003082c
or eax, 1
mov dword [esi + 0x1eec], 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 + 0x3948], 1
nop dword [eax]
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x28]
mov byte [esi + ecx + 0x3940], al
add ecx, 1
adc edx, 0
jne 0x10030818
cmp ecx, 8
jb 0x10030800
push 0x10078540
call fcn.10066958
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x3940]
mov ecx, edi
call fcn.1005e7e0
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 0x10030857
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.100636c0
mov dword [ebp - 4], 0x5f
mov eax, dword [esi + 0x3978]
mov dword [ebp - 0x30], 0x71e23285
test al, 1
jne 0x100308d9
or eax, 1
mov dword [esi + 0x3978], 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 + 0x3620], 1
nop dword [eax]
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x30]
mov byte [esi + ecx + 0x361c], al
add ecx, 1
adc edx, 0
jne 0x100308c8
cmp ecx, 4
jb 0x100308b0
push 0x10078590
call fcn.10066958
add esp, 4
mov byte [ebp - 4], 0x5f
lea edi, [esi + 0x361c]
mov ecx, edi
call fcn.1005e840
mov ecx, edi
mov dword [ebp - 0x68], 0
mov dword [ebp - 0x64], 0xf
mov byte [ebp - 0x78], 0
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10030900
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x78]
call fcn.100636c0
mov byte [ebp - 4], 0x61
mov eax, dword [esi + 0x23b8]
mov dword [ebp - 0x20], 0x18af388c
mov dword [ebp - 0x1c], 0x5478bbfe
mov dword [ebp - 0x18], 0x14e03bd3
mov word [ebp - 0x14], 0xcdec
test al, 1
jne 0x10030989
or eax, 1
mov dword [esi + 0x23b8], 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 + 0x254e], 1
nop
mov al, byte [ebp + ecx - 0x20]
mov byte [esi + ecx + 0x2540], al
add ecx, 1
adc edx, 0
jne 0x10030978
cmp ecx, 0xe
jb 0x10030960
push 0x100785e0
call fcn.10066958
add esp, 4
mov byte [ebp - 4], 0x61
lea edi, [esi + 0x2540]
mov ecx, edi
call fcn.1005e8a0
mov ecx, edi
mov dword [ebp - 0xb0], 0
mov dword [ebp - 0xac], 0xf
mov byte [ebp - 0xc0], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100309b6
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0xc0]
call fcn.100636c0
push 0x10095234
lea edx, [ebp - 0xc0]
mov byte [ebp - 4], 0x63
lea ecx, [ebp - 0xf0]
call fcn.10063860
add esp, 4
lea ecx, [ebp - 0x78]
mov byte [ebp - 4], 0x64
push ecx
push eax
push dword [ebp - 0x24]
lea ecx, [ebp - 0xd8]
call fcn.10064fa0
sub esp, 0x18
mov byte [ebp - 4], 0x65
mov ecx, esp
mov dword [ebp - 0x40], esp
lea edx, [ebp - 0xd8]
push 0x10095294
call fcn.10063860
add esp, 4
mov byte [ebp - 4], 0x66
mov eax, dword [esi + 0xe18]
mov dword [ebp - 0x20], 0x1b62fd5
mov dword [ebp - 0x1c], 0x82fa2bc
mov dword [ebp - 0x18], 0x1cb03a8d
mov byte [ebp - 0x14], 0xd1
test al, 1
jne 0x10030a99
or eax, 1
mov dword [esi + 0xe18], eax
mov byte [ebp - 4], 0x67
xorps xmm0, xmm0
movlpd qword [ebp - 0x34], xmm0
mov edx, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x34]
mov byte [esi + 0x39b1], 1
nop dword [eax + eax]
mov al, byte [ebp + ecx - 0x20]
mov byte [esi + ecx + 0x39a4], al
add ecx, 1
adc edx, 0
jne 0x10030a88
cmp ecx, 0xd
jb 0x10030a70
push 0x10078630
call fcn.10066958
add esp, 4
mov byte [ebp - 4], 0x66
lea esi, [esi + 0x39a4]
mov ecx, esi
call fcn.1005e900
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 0x10030ac1
sub ecx, edi
push ecx
push esi
mov ecx, edx
call fcn.100636c0
mov ecx, dword [0x10098584]
mov eax, dword [ecx]
mov byte [ebp - 4], 0x6b
call dword [eax]
mov byte [ebp - 4], 0x6a
mov edx, dword [ebp - 0xc4]
cmp edx, 0x10
jb 0x10030b1f
mov ecx, dword [ebp - 0xd8]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10030b15
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10030c15
push edx
push ecx
call fcn.100668a1
add esp, 8
mov byte [ebp - 4], 0x69
mov edx, dword [ebp - 0xdc]
mov dword [ebp - 0xc8], 0
mov dword [ebp - 0xc4], 0xf
mov byte [ebp - 0xd8], 0
cmp edx, 0x10
jb 0x10030b78
mov ecx, dword [ebp - 0xf0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10030b6e
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10030c15
push edx
push ecx
call fcn.100668a1
add esp, 8
mov byte [ebp - 4], 0x68
mov edx, dword [ebp - 0xac]
mov dword [ebp - 0xe0], 0
mov dword [ebp - 0xdc], 0xf
mov byte [ebp - 0xf0], 0
cmp edx, 0x10
jb 0x10030bcd
mov ecx, dword [ebp - 0xc0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10030bc3
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10030c15
push edx
push ecx
call fcn.100668a1
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x64]
mov dword [ebp - 0xb0], 0
mov dword [ebp - 0xac], 0xf
mov byte [ebp - 0xc0], 0
cmp edx, 0x10
jb 0x10030c25
mov ecx, dword [ebp - 0x78]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10030c1b
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x10030c1b
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.100668a1
add esp, 8
mov ecx, dword [0x1009c7a0]
mov edx, 0x1009524c
cmp dword [0x10095260], 0x10
push 0x100972c8
cmovae edx, dword [0x1009524c]
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.10065f79
mov esp, ebp
pop ebp
ret