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

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1006b44b
mov eax, dword fs:[0]
push eax
sub esp, 0xd4
mov eax, dword [0x1009100c]
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 [0x10091f0c]
push 0x10098790
push 0
push 0
mov esi, dword [eax + ecx*4]
mov dword [ebp - 0x18], 0x13da4a91
mov eax, dword [esi + 0x3014]
test al, 1
jne 0x1003a02c
or eax, 1
mov dword [esi + 0x3014], 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 + 0x2588], 1
nop dword [eax]
mov al, byte [ebp + ecx - 0x18]
mov byte [esi + ecx + 0x2584], al
add ecx, 1
adc edx, 0
jne 0x1003a018
cmp ecx, 4
jb 0x1003a000
push 0x100795b0
call fcn.10063830
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x2584]
mov ecx, edi
call fcn.10057e90
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 0x1003a050
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x80]
call fcn.10060970
mov dword [ebp - 4], 1
mov eax, dword [esi + 0x31a8]
mov dword [ebp - 0x38], 0x7a974098
mov dword [ebp - 0x34], 0xea663faa
mov dword [ebp - 0x30], 0x76d843c7
mov word [ebp - 0x2c], 0x49b8
test al, 1
jne 0x1003a0da
or eax, 1
mov dword [esi + 0x31a8], 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 + 0x7d6], 1
mov al, byte [ebp + ecx - 0x38]
mov byte [esi + ecx + 0x7c8], al
add ecx, 1
adc edx, 0
jne 0x1003a0c9
cmp ecx, 0xe
jb 0x1003a0b1
push 0x10079600
call fcn.10063830
add esp, 4
mov byte [ebp - 4], 1
lea edi, [esi + 0x7c8]
mov ecx, edi
call fcn.10057ef0
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 0x1003a100
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x50]
call fcn.10060970
push 0x10091154
lea edx, [ebp - 0x50]
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x98]
call fcn.10060ac0
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.10061f50
sub esp, 0x18
mov byte [ebp - 4], 5
mov ecx, esp
mov dword [ebp - 0x18], esp
lea edx, [ebp - 0x68]
push 0x10091574
call fcn.10060ac0
add esp, 4
mov byte [ebp - 4], 6
mov eax, dword [esi + 0xbec]
mov dword [ebp - 0x38], 0x7f864edc
mov dword [ebp - 0x34], 0xb5322be4
mov dword [ebp - 0x30], 0x70c953d2
mov word [ebp - 0x2c], 0x24ea
mov byte [ebp - 0x2a], 0x53
test al, 1
jne 0x1003a1d9
or eax, 1
mov dword [esi + 0xbec], 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 + 0x130f], 1
nop dword [eax]
mov al, byte [ebp + ecx - 0x38]
mov byte [esi + ecx + 0x1300], al
add ecx, 1
adc edx, 0
jne 0x1003a1c8
cmp ecx, 0xf
jb 0x1003a1b0
push 0x10079650
call fcn.10063830
add esp, 4
mov byte [ebp - 4], 6
lea edi, [esi + 0x1300]
mov ecx, edi
call fcn.10057f50
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 0x1003a201
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10060970
mov ecx, dword [0x10093804]
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 0x1003a25a
mov ecx, dword [ebp - 0x68]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003a250
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003a338
push edx
push ecx
call fcn.10063779
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 0x1003a2aa
mov ecx, dword [ebp - 0x98]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003a2a0
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003a338
push edx
push ecx
call fcn.10063779
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 0x1003a2f9
mov ecx, dword [ebp - 0x50]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003a2ef
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003a338
push edx
push ecx
call fcn.10063779
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 0x1003a348
mov ecx, dword [ebp - 0x80]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003a33e
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x1003a33e
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.10063779
add esp, 8
mov ecx, dword [0x10097a00]
mov edx, 0x1009152c
cmp dword [0x10091540], 0x10
push 0x10098790
cmovae edx, dword [0x1009152c]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x1003c6a9
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x2014]
mov dword [ebp - 0x18], 0x7b5edc8b
push 0x10098790
push 0
push 0
test al, 1
jne 0x1003a3ec
or eax, 1
mov dword [esi + 0x2014], 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 + 0x286c], 1
nop
mov al, byte [ebp + ecx - 0x18]
mov byte [esi + ecx + 0x2868], al
add ecx, 1
adc edx, 0
jne 0x1003a3d8
cmp ecx, 4
jb 0x1003a3c0
push 0x100794c0
call fcn.10063830
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x2868]
mov ecx, edi
call fcn.10057d70
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 0x1003a410
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x68]
call fcn.10060970
mov dword [ebp - 4], 9
mov eax, dword [esi + 0x25ac]
mov dword [ebp - 0x38], 0x1213d682
mov dword [ebp - 0x34], 0x32ba0df8
mov dword [ebp - 0x30], 0x1e5cd5dd
mov word [ebp - 0x2c], 0x7bea
test al, 1
jne 0x1003a49a
or eax, 1
mov dword [esi + 0x25ac], 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 + 0x2af2], 1
mov al, byte [ebp + ecx - 0x38]
mov byte [ecx + esi + 0x2ae4], al
add ecx, 1
adc edx, 0
jne 0x1003a489
cmp ecx, 0xe
jb 0x1003a471
push 0x10079510
call fcn.10063830
add esp, 4
mov byte [ebp - 4], 9
lea edi, [esi + 0x2ae4]
mov ecx, edi
call fcn.10057dd0
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 0x1003a4c0
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x50]
call fcn.10060970
push 0x10091344
lea edx, [ebp - 0x50]
mov byte [ebp - 4], 0xb
lea ecx, [ebp - 0x98]
call fcn.10060ac0
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.10061f50
sub esp, 0x18
mov byte [ebp - 4], 0xd
mov ecx, esp
mov dword [ebp - 0x30], esp
lea edx, [ebp - 0x80]
push 0x10091574
call fcn.10060ac0
add esp, 4
mov byte [ebp - 4], 0xe
mov eax, dword [esi + 0xdc0]
mov dword [ebp - 0x20], 0x1702d8c6
mov dword [ebp - 0x1c], 0x6dee19b6
mov dword [ebp - 0x18], 0x184dc5c8
mov word [ebp - 0x14], 0x16b8
mov byte [ebp - 0x12], 0x8f
test al, 1
jne 0x1003a599
or eax, 1
mov dword [esi + 0xdc0], 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 + 0x28b], 1
nop dword [eax]
mov al, byte [ebp + ecx - 0x20]
mov byte [ecx + esi + 0x27c], al
add ecx, 1
adc edx, 0
jne 0x1003a588
cmp ecx, 0xf
jb 0x1003a570
push 0x10079560
call fcn.10063830
add esp, 4
mov byte [ebp - 4], 0xe
lea edi, [esi + 0x27c]
mov ecx, edi
call fcn.10057e30
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 0x1003a5c1
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10060970
mov ecx, dword [0x10093804]
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 0x1003a61a
mov ecx, dword [ebp - 0x80]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003a610
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003a6f8
push edx
push ecx
call fcn.10063779
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 0x1003a66a
mov ecx, dword [ebp - 0x98]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003a660
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003a6f8
push edx
push ecx
call fcn.10063779
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 0x1003a6b9
mov ecx, dword [ebp - 0x50]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003a6af
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003a6f8
push edx
push ecx
call fcn.10063779
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 0x1003a708
mov ecx, dword [ebp - 0x68]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003a6fe
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x1003a6fe
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.10063779
add esp, 8
mov ecx, dword [0x10097a00]
mov edx, 0x1009152c
cmp dword [0x10091540], 0x10
push 0x10098790
cmovae edx, dword [0x1009152c]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x1003c6a9
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x1274]
mov dword [ebp - 0x18], 0xc3aab2db
push 0x10098790
push 0
push 0
test al, 1
jne 0x1003a7ac
or eax, 1
mov dword [esi + 0x1274], 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 + 0x3b18], 1
nop
mov al, byte [ebp + ecx - 0x18]
mov byte [ecx + esi + 0x3b14], al
add ecx, 1
adc edx, 0
jne 0x1003a798
cmp ecx, 4
jb 0x1003a780
push 0x100793d0
call fcn.10063830
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x3b14]
mov ecx, edi
call fcn.10057c50
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 0x1003a7d0
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x68]
call fcn.10060970
mov dword [ebp - 4], 0x11
mov eax, dword [esi + 0x2fc8]
mov dword [ebp - 0x38], 0xaae7b8d2
mov dword [ebp - 0x34], 0x58d8330a
mov dword [ebp - 0x30], 0xa6a8bb8d
mov word [ebp - 0x2c], 0x4518
test al, 1
jne 0x1003a85a
or eax, 1
mov dword [esi + 0x2fc8], 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 + 0x16ea], 1
mov al, byte [ebp + ecx - 0x38]
mov byte [ecx + esi + 0x16dc], al
add ecx, 1
adc edx, 0
jne 0x1003a849
cmp ecx, 0xe
jb 0x1003a831
push 0x10079420
call fcn.10063830
add esp, 4
mov byte [ebp - 4], 0x11
lea edi, [esi + 0x16dc]
mov ecx, edi
call fcn.10057cb0
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 0x1003a880
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x50]
call fcn.10060970
push 0x10091514
lea edx, [ebp - 0x50]
mov byte [ebp - 4], 0x13
lea ecx, [ebp - 0x98]
call fcn.10060ac0
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.10061f50
sub esp, 0x18
mov byte [ebp - 4], 0x15
mov ecx, esp
mov dword [ebp - 0x30], esp
lea edx, [ebp - 0x80]
push 0x10091574
call fcn.10060ac0
add esp, 4
mov byte [ebp - 4], 0x16
mov eax, dword [esi + 0x760]
mov dword [ebp - 0x20], 0xaff6b696
mov dword [ebp - 0x1c], 0x78c2744
mov dword [ebp - 0x18], 0xa0b9ab98
mov word [ebp - 0x14], 0x284a
mov byte [ebp - 0x12], 0xed
test al, 1
jne 0x1003a959
or eax, 1
mov dword [esi + 0x760], 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 + 0x2f43], 1
nop dword [eax]
mov al, byte [ebp + ecx - 0x20]
mov byte [ecx + esi + 0x2f34], al
add ecx, 1
adc edx, 0
jne 0x1003a948
cmp ecx, 0xf
jb 0x1003a930
push 0x10079470
call fcn.10063830
add esp, 4
mov byte [ebp - 4], 0x16
lea edi, [esi + 0x2f34]
mov ecx, edi
call fcn.10057d10
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 0x1003a981
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10060970
mov ecx, dword [0x10093804]
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 0x1003a9da
mov ecx, dword [ebp - 0x80]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003a9d0
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003aab8
push edx
push ecx
call fcn.10063779
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 0x1003aa2a
mov ecx, dword [ebp - 0x98]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003aa20
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003aab8
push edx
push ecx
call fcn.10063779
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 0x1003aa79
mov ecx, dword [ebp - 0x50]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003aa6f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003aab8
push edx
push ecx
call fcn.10063779
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 0x1003aac8
mov ecx, dword [ebp - 0x68]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003aabe
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x1003aabe
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.10063779
add esp, 8
mov ecx, dword [0x10097a00]
mov edx, 0x1009152c
cmp dword [0x10091540], 0x10
push 0x10098790
cmovae edx, dword [0x1009152c]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x1003c6a9
mov ecx, 0x10098790
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1003ab00
sub ecx, edx
cmp ecx, 0x20
jae 0x1003ab17
cmp ecx, 1
ja 0x1003c6a9
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x3ec8]
mov dword [ebp - 0x34], 0x81c5212b
mov dword [ebp - 0x30], 0x46609d8a
mov byte [ebp - 0x2c], 0x43
push 0x10098790
test al, 1
jne 0x1003ab9c
or eax, 1
mov dword [esi + 0x3ec8], 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 + 0x17c5], 1
nop dword [eax + eax]
mov al, byte [ebp + ecx - 0x34]
mov byte [ecx + esi + 0x17bc], al
add ecx, 1
adc edx, 0
jne 0x1003ab88
cmp ecx, 9
jb 0x1003ab70
push 0x10079290
call fcn.10063830
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x17bc]
mov ecx, edi
call fcn.10057ad0
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 0x1003abc7
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10060970
mov dword [ebp - 4], 0x19
mov eax, dword [esi + 0x1c64]
mov dword [ebp - 0x18], 0xf18c3e65
test al, 1
jne 0x1003ac49
or eax, 1
mov dword [esi + 0x1c64], 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 + 0x1524], 1
nop dword [eax]
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x18]
mov byte [ecx + esi + 0x1520], al
add ecx, 1
adc edx, 0
jne 0x1003ac38
cmp ecx, 4
jb 0x1003ac20
push 0x100792e0
call fcn.10063830
add esp, 4
mov byte [ebp - 4], 0x19
lea edi, [esi + 0x1520]
mov ecx, edi
call fcn.10057b30
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 0x1003ac76
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0xb0]
call fcn.10060970
mov byte [ebp - 4], 0x1b
mov eax, dword [esi + 0x3160]
mov dword [ebp - 0x20], 0x98c1346c
mov dword [ebp - 0x1c], 0x467ad1d6
mov dword [ebp - 0x18], 0x948e3733
mov word [ebp - 0x14], 0xa7c4
test al, 1
jne 0x1003ad09
or eax, 1
mov dword [esi + 0x3160], 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 + 0xd3a], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x20]
mov byte [ecx + esi + 0xd2c], al
add ecx, 1
adc edx, 0
jne 0x1003acf8
cmp ecx, 0xe
jb 0x1003ace0
push 0x10079330
call fcn.10063830
add esp, 4
mov byte [ebp - 4], 0x1b
lea edi, [esi + 0xd2c]
mov ecx, edi
call fcn.10057b90
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 0x1003ad30
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x68]
call fcn.10060970
push 0x10091154
lea edx, [ebp - 0x68]
mov byte [ebp - 4], 0x1d
lea ecx, [ebp - 0x98]
call fcn.10060ac0
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.10061f50
sub esp, 0x18
mov byte [ebp - 4], 0x1f
mov ecx, esp
mov dword [ebp - 0x18], esp
lea edx, [ebp - 0x80]
push 0x10091574
call fcn.10060ac0
add esp, 4
mov byte [ebp - 4], 0x20
mov eax, dword [esi + 0x3018]
mov dword [ebp - 0x48], 0x9dd03a28
mov dword [ebp - 0x44], 0x192ec598
mov dword [ebp - 0x40], 0x929f2726
mov word [ebp - 0x3c], 0xca96
mov byte [ebp - 0x3a], 0x4f
test al, 1
jne 0x1003ae09
or eax, 1
mov dword [esi + 0x3018], 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 + 0x35f], 1
nop
mov al, byte [ebp + ecx - 0x48]
mov byte [ecx + esi + 0x350], al
add ecx, 1
adc edx, 0
jne 0x1003adf8
cmp ecx, 0xf
jb 0x1003ade0
push 0x10079380
call fcn.10063830
add esp, 4
mov byte [ebp - 4], 0x20
lea edi, [esi + 0x350]
mov ecx, edi
call fcn.10057bf0
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 0x1003ae31
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10060970
mov ecx, dword [0x10093804]
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 0x1003ae89
mov ecx, dword [ebp - 0x80]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003ae7f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003af6d
push edx
push ecx
call fcn.10063779
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 0x1003aed9
mov ecx, dword [ebp - 0x98]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003aecf
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003af6d
push edx
push ecx
call fcn.10063779
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 0x1003af28
mov ecx, dword [ebp - 0x68]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003af1e
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003af6d
push edx
push ecx
call fcn.10063779
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 0x1003af7d
mov ecx, dword [ebp - 0xb0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003af73
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x1003af73
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.10063779
add esp, 8
mov ecx, dword [0x10097a00]
mov edx, 0x1009152c
cmp dword [0x10091540], 0x10
push 0x10098790
cmovae edx, dword [0x1009152c]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x1003c6a9
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x2678]
mov dword [ebp - 0x34], 0xf98bfbcb
mov dword [ebp - 0x30], 0x4a94c784
mov byte [ebp - 0x2c], 0xa3
push 0x10098790
test al, 1
jne 0x1003b02c
or eax, 1
mov dword [esi + 0x2678], 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 + 0x1de9], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x34]
mov byte [esi + ecx + 0x1de0], al
add ecx, 1
adc edx, 0
jne 0x1003b018
cmp ecx, 9
jb 0x1003b000
push 0x10079150
call fcn.10063830
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x1de0]
mov ecx, edi
call fcn.10057950
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 0x1003b057
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10060970
mov dword [ebp - 4], 0x27
mov eax, dword [esi + 0x8b0]
mov dword [ebp - 0x18], 0x89c2e485
test al, 1
jne 0x1003b0d9
or eax, 1
mov dword [esi + 0x8b0], 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 + 0xf0c], 1
nop dword [eax]
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x18]
mov byte [esi + ecx + 0xf08], al
add ecx, 1
adc edx, 0
jne 0x1003b0c8
cmp ecx, 4
jb 0x1003b0b0
push 0x100791a0
call fcn.10063830
add esp, 4
mov byte [ebp - 4], 0x27
lea edi, [esi + 0xf08]
mov ecx, edi
call fcn.100579b0
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 0x1003b106
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0xb0]
call fcn.10060970
mov byte [ebp - 4], 0x29
mov eax, dword [esi + 0xa9c]
mov dword [ebp - 0x20], 0xe08fee8c
mov dword [ebp - 0x1c], 0x4a8e8bd8
mov dword [ebp - 0x18], 0xecc0edd3
mov word [ebp - 0x14], 0xfdca
test al, 1
jne 0x1003b199
or eax, 1
mov dword [esi + 0xa9c], 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 + 0x4046], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x20]
mov byte [esi + ecx + 0x4038], al
add ecx, 1
adc edx, 0
jne 0x1003b188
cmp ecx, 0xe
jb 0x1003b170
push 0x100791f0
call fcn.10063830
add esp, 4
mov byte [ebp - 4], 0x29
lea edi, [esi + 0x4038]
mov ecx, edi
call fcn.10057a10
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 0x1003b1c0
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x68]
call fcn.10060970
push 0x10091344
lea edx, [ebp - 0x68]
mov byte [ebp - 4], 0x2b
lea ecx, [ebp - 0x98]
call fcn.10060ac0
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.10061f50
sub esp, 0x18
mov byte [ebp - 4], 0x2d
mov ecx, esp
mov dword [ebp - 0x30], esp
lea edx, [ebp - 0x80]
push 0x10091574
call fcn.10060ac0
add esp, 4
mov byte [ebp - 4], 0x2e
mov eax, dword [esi + 0x15e0]
mov dword [ebp - 0x48], 0xe59ee0c8
mov dword [ebp - 0x44], 0x15da9f96
mov dword [ebp - 0x40], 0xead1fdc6
mov word [ebp - 0x3c], 0x9098
mov byte [ebp - 0x3a], 0xbb
test al, 1
jne 0x1003b299
or eax, 1
mov dword [esi + 0x15e0], 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 + 0x10f3], 1
nop
mov al, byte [ebp + ecx - 0x48]
mov byte [esi + ecx + 0x10e4], al
add ecx, 1
adc edx, 0
jne 0x1003b288
cmp ecx, 0xf
jb 0x1003b270
push 0x10079240
call fcn.10063830
add esp, 4
mov byte [ebp - 4], 0x2e
lea edi, [esi + 0x10e4]
mov ecx, edi
call fcn.10057a70
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 0x1003b2c1
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10060970
mov ecx, dword [0x10093804]
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 0x1003b319
mov ecx, dword [ebp - 0x80]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003b30f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003b3fd
push edx
push ecx
call fcn.10063779
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 0x1003b369
mov ecx, dword [ebp - 0x98]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003b35f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003b3fd
push edx
push ecx
call fcn.10063779
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 0x1003b3b8
mov ecx, dword [ebp - 0x68]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003b3ae
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003b3fd
push edx
push ecx
call fcn.10063779
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 0x1003b40d
mov ecx, dword [ebp - 0xb0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003b403
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x1003b403
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.10063779
add esp, 8
mov ecx, dword [0x10097a00]
mov edx, 0x1009152c
cmp dword [0x10091540], 0x10
push 0x10098790
cmovae edx, dword [0x1009152c]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x1003c6a9
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x3c0c]
mov dword [ebp - 0x34], 0x4b713921
mov dword [ebp - 0x30], 0x646c8382
mov byte [ebp - 0x2c], 0x49
push 0x10098790
test al, 1
jne 0x1003b4bc
or eax, 1
mov dword [esi + 0x3c0c], 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 + 0x2685], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x34]
mov byte [esi + ecx + 0x267c], al
add ecx, 1
adc edx, 0
jne 0x1003b4a8
cmp ecx, 9
jb 0x1003b490
push 0x10079010
call fcn.10063830
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x267c]
mov ecx, edi
call fcn.100577d0
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 0x1003b4e7
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10060970
mov dword [ebp - 4], 0x35
mov eax, dword [esi + 0x4f8]
mov dword [ebp - 0x18], 0x3b38266f
test al, 1
jne 0x1003b569
or eax, 1
mov dword [esi + 0x4f8], 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 + 0xfdc], 1
nop dword [eax]
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x18]
mov byte [esi + ecx + 0xfd8], al
add ecx, 1
adc edx, 0
jne 0x1003b558
cmp ecx, 4
jb 0x1003b540
push 0x10079060
call fcn.10063830
add esp, 4
mov byte [ebp - 4], 0x35
lea edi, [esi + 0xfd8]
mov ecx, edi
call fcn.10057830
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 0x1003b596
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0xb0]
call fcn.10060970
mov byte [ebp - 4], 0x37
mov eax, dword [esi + 0x1fc4]
mov dword [ebp - 0x20], 0x52752c66
mov dword [ebp - 0x1c], 0x6476cfde
mov dword [ebp - 0x18], 0x5e3a2f39
mov word [ebp - 0x14], 0xb9cc
test al, 1
jne 0x1003b629
or eax, 1
mov dword [esi + 0x1fc4], 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 + 0x105a], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x20]
mov byte [esi + ecx + 0x104c], al
add ecx, 1
adc edx, 0
jne 0x1003b618
cmp ecx, 0xe
jb 0x1003b600
push 0x100790b0
call fcn.10063830
add esp, 4
mov byte [ebp - 4], 0x37
lea edi, [esi + 0x104c]
mov ecx, edi
call fcn.10057890
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 0x1003b650
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x68]
call fcn.10060970
push 0x10091514
lea edx, [ebp - 0x68]
mov byte [ebp - 4], 0x39
lea ecx, [ebp - 0x98]
call fcn.10060ac0
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.10061f50
sub esp, 0x18
mov byte [ebp - 4], 0x3b
mov ecx, esp
mov dword [ebp - 0x30], esp
lea edx, [ebp - 0x80]
push 0x10091574
call fcn.10060ac0
add esp, 4
mov byte [ebp - 4], 0x3c
mov eax, dword [esi + 0x528]
mov dword [ebp - 0x48], 0x57642222
mov dword [ebp - 0x44], 0x3b22db90
mov dword [ebp - 0x40], 0x582b3f2c
mov word [ebp - 0x3c], 0xd49e
mov byte [ebp - 0x3a], 0x43
test al, 1
jne 0x1003b729
or eax, 1
mov dword [esi + 0x528], 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 + 0x3603], 1
nop
mov al, byte [ebp + ecx - 0x48]
mov byte [esi + ecx + 0x35f4], al
add ecx, 1
adc edx, 0
jne 0x1003b718
cmp ecx, 0xf
jb 0x1003b700
push 0x10079100
call fcn.10063830
add esp, 4
mov byte [ebp - 4], 0x3c
lea edi, [esi + 0x35f4]
mov ecx, edi
call fcn.100578f0
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 0x1003b751
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10060970
mov ecx, dword [0x10093804]
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 0x1003b7a9
mov ecx, dword [ebp - 0x80]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003b79f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003b88d
push edx
push ecx
call fcn.10063779
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 0x1003b7f9
mov ecx, dword [ebp - 0x98]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003b7ef
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003b88d
push edx
push ecx
call fcn.10063779
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 0x1003b848
mov ecx, dword [ebp - 0x68]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003b83e
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003b88d
push edx
push ecx
call fcn.10063779
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 0x1003b89d
mov ecx, dword [ebp - 0xb0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003b893
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x1003b893
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.10063779
add esp, 8
mov ecx, dword [0x10097a00]
mov edx, 0x1009152c
cmp dword [0x10091540], 0x10
push 0x10098790
cmovae edx, dword [0x1009152c]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x1003c6a9
mov ecx, 0x10098790
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1003b8d1
sub ecx, edx
cmp ecx, 0x20
jae 0x1003b8e8
cmp ecx, 1
ja 0x1003c6a9
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x405c]
mov dword [ebp - 0x28], 0x1171914d
mov dword [ebp - 0x24], 0xeb08f27d
push 0x10098790
test al, 1
jne 0x1003b96c
or eax, 1
mov dword [esi + 0x405c], 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 + 0x1548], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x28]
mov byte [esi + ecx + 0x1540], al
add ecx, 1
adc edx, 0
jne 0x1003b958
cmp ecx, 8
jb 0x1003b940
push 0x10078ed0
call fcn.10063830
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x1540]
mov ecx, edi
call fcn.10057650
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 0x1003b997
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10060970
mov dword [ebp - 4], 0x43
mov eax, dword [esi + 0x26e4]
mov dword [ebp - 0x18], 0x61388e03
test al, 1
jne 0x1003ba19
or eax, 1
mov dword [esi + 0x26e4], 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 + 0x308], 1
nop dword [eax]
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x18]
mov byte [esi + ecx + 0x304], al
add ecx, 1
adc edx, 0
jne 0x1003ba08
cmp ecx, 4
jb 0x1003b9f0
push 0x10078f20
call fcn.10063830
add esp, 4
mov byte [ebp - 4], 0x43
lea edi, [esi + 0x304]
mov ecx, edi
call fcn.100576b0
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 0x1003ba46
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0xb0]
call fcn.10060970
mov byte [ebp - 4], 0x45
mov eax, dword [esi + 0x3e9c]
mov dword [ebp - 0x20], 0x875840a
mov dword [ebp - 0x1c], 0xc412ab68
mov dword [ebp - 0x18], 0x43a8755
mov word [ebp - 0x14], 0xdd7a
test al, 1
jne 0x1003bad9
or eax, 1
mov dword [esi + 0x3e9c], 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 + 0x1d02], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x20]
mov byte [ecx + esi + 0x1cf4], al
add ecx, 1
adc edx, 0
jne 0x1003bac8
cmp ecx, 0xe
jb 0x1003bab0
push 0x10078f70
call fcn.10063830
add esp, 4
mov byte [ebp - 4], 0x45
lea edi, [esi + 0x1cf4]
mov ecx, edi
call fcn.10057710
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 0x1003bb00
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x68]
call fcn.10060970
push 0x10091154
lea edx, [ebp - 0x68]
mov byte [ebp - 4], 0x47
lea ecx, [ebp - 0x98]
call fcn.10060ac0
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.10061f50
sub esp, 0x18
mov byte [ebp - 4], 0x49
mov ecx, esp
mov dword [ebp - 0x30], esp
lea edx, [ebp - 0x80]
push 0x10091574
call fcn.10060ac0
add esp, 4
mov byte [ebp - 4], 0x4a
mov eax, dword [esi + 0xfd0]
mov dword [ebp - 0x48], 0xd648a4e
mov dword [ebp - 0x44], 0x9b46bf26
mov dword [ebp - 0x40], 0x22b9740
mov word [ebp - 0x3c], 0xb028
mov byte [ebp - 0x3a], 0x27
test al, 1
jne 0x1003bbd9
or eax, 1
mov dword [esi + 0xfd0], 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 + 0x353f], 1
nop
mov al, byte [ebp + ecx - 0x48]
mov byte [ecx + esi + 0x3530], al
add ecx, 1
adc edx, 0
jne 0x1003bbc8
cmp ecx, 0xf
jb 0x1003bbb0
push 0x10078fc0
call fcn.10063830
add esp, 4
mov byte [ebp - 4], 0x4a
lea edi, [esi + 0x3530]
mov ecx, edi
call fcn.10057770
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 0x1003bc01
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10060970
mov ecx, dword [0x10093804]
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 0x1003bc59
mov ecx, dword [ebp - 0x80]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003bc4f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003bd3d
push edx
push ecx
call fcn.10063779
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 0x1003bca9
mov ecx, dword [ebp - 0x98]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003bc9f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003bd3d
push edx
push ecx
call fcn.10063779
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 0x1003bcf8
mov ecx, dword [ebp - 0x68]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003bcee
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003bd3d
push edx
push ecx
call fcn.10063779
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 0x1003bd4d
mov ecx, dword [ebp - 0xb0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003bd43
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x1003bd43
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.10063779
add esp, 8
mov ecx, dword [0x10097a00]
mov edx, 0x1009152c
cmp dword [0x10091540], 0x10
push 0x10098790
cmovae edx, dword [0x1009152c]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x1003c6a9
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x3e7c]
mov dword [ebp - 0x28], 0xe9bde75b
mov dword [ebp - 0x24], 0x5dc01e97
push 0x10098790
test al, 1
jne 0x1003bdfc
or eax, 1
mov dword [esi + 0x3e7c], 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 + 0x558], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x28]
mov byte [ecx + esi + 0x550], al
add ecx, 1
adc edx, 0
jne 0x1003bde8
cmp ecx, 8
jb 0x1003bdd0
push 0x10078d90
call fcn.10063830
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x550]
mov ecx, edi
call fcn.100574d0
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 0x1003be27
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10060970
mov dword [ebp - 4], 0x51
mov eax, dword [esi + 0xee8]
mov dword [ebp - 0x18], 0x99f4f815
test al, 1
jne 0x1003bea9
or eax, 1
mov dword [esi + 0xee8], 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 + 0x30f0], 1
nop dword [eax]
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x18]
mov byte [ecx + esi + 0x30ec], al
add ecx, 1
adc edx, 0
jne 0x1003be98
cmp ecx, 4
jb 0x1003be80
push 0x10078de0
call fcn.10063830
add esp, 4
mov byte [ebp - 4], 0x51
lea edi, [esi + 0x30ec]
mov ecx, edi
call fcn.10057530
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 0x1003bed6
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0xb0]
call fcn.10060970
mov byte [ebp - 4], 0x53
mov eax, dword [esi + 0x1ce0]
mov dword [ebp - 0x20], 0xf0b9f21c
mov dword [ebp - 0x1c], 0x72da4782
mov dword [ebp - 0x18], 0xfcf6f143
mov word [ebp - 0x14], 0x3190
test al, 1
jne 0x1003bf69
or eax, 1
mov dword [esi + 0x1ce0], 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 + 0x9a2], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x20]
mov byte [ecx + esi + 0x994], al
add ecx, 1
adc edx, 0
jne 0x1003bf58
cmp ecx, 0xe
jb 0x1003bf40
push 0x10078e30
call fcn.10063830
add esp, 4
mov byte [ebp - 4], 0x53
lea edi, [esi + 0x994]
mov ecx, edi
call fcn.10057590
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 0x1003bf90
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x68]
call fcn.10060970
push 0x10091344
lea edx, [ebp - 0x68]
mov byte [ebp - 4], 0x55
lea ecx, [ebp - 0x98]
call fcn.10060ac0
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.10061f50
sub esp, 0x18
mov byte [ebp - 4], 0x57
mov ecx, esp
mov dword [ebp - 0x30], esp
lea edx, [ebp - 0x80]
push 0x10091574
call fcn.10060ac0
add esp, 4
mov byte [ebp - 4], 0x58
mov eax, dword [esi + 0x1c48]
mov dword [ebp - 0x48], 0xf5a8fc58
mov dword [ebp - 0x44], 0x2d8e53cc
mov dword [ebp - 0x40], 0xfae7e156
mov word [ebp - 0x3c], 0x5cc2
mov byte [ebp - 0x3a], 0xef
test al, 1
jne 0x1003c069
or eax, 1
mov dword [esi + 0x1c48], 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 + 0x2e97], 1
nop
mov al, byte [ebp + ecx - 0x48]
mov byte [ecx + esi + 0x2e88], al
add ecx, 1
adc edx, 0
jne 0x1003c058
cmp ecx, 0xf
jb 0x1003c040
push 0x10078e80
call fcn.10063830
add esp, 4
mov byte [ebp - 4], 0x58
lea edi, [esi + 0x2e88]
mov ecx, edi
call fcn.100575f0
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 0x1003c091
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10060970
mov ecx, dword [0x10093804]
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 0x1003c0e9
mov ecx, dword [ebp - 0x80]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003c0df
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003c1cd
push edx
push ecx
call fcn.10063779
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 0x1003c139
mov ecx, dword [ebp - 0x98]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003c12f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003c1cd
push edx
push ecx
call fcn.10063779
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 0x1003c188
mov ecx, dword [ebp - 0x68]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003c17e
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003c1cd
push edx
push ecx
call fcn.10063779
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 0x1003c1dd
mov ecx, dword [ebp - 0xb0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003c1d3
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x1003c1d3
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.10063779
add esp, 8
mov ecx, dword [0x10097a00]
mov edx, 0x1009152c
cmp dword [0x10091540], 0x10
push 0x10098790
cmovae edx, dword [0x1009152c]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x1003c6a9
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x1434]
mov dword [ebp - 0x28], 0xaf53859f
mov dword [ebp - 0x24], 0x3b049819
push 0x10098790
test al, 1
jne 0x1003c28c
or eax, 1
mov dword [esi + 0x1434], 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 + 0xefc], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x28]
mov byte [esi + ecx + 0xef4], al
add ecx, 1
adc edx, 0
jne 0x1003c278
cmp ecx, 8
jb 0x1003c260
push 0x10078c50
call fcn.10063830
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0xef4]
mov ecx, edi
call fcn.10057350
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 0x1003c2b7
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10060970
mov dword [ebp - 4], 0x5f
mov eax, dword [esi + 0x2244]
mov dword [ebp - 0x18], 0xdf1a9ad1
test al, 1
jne 0x1003c339
or eax, 1
mov dword [esi + 0x2244], 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 + 0x3fd8], 1
nop dword [eax]
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x18]
mov byte [esi + ecx + 0x3fd4], al
add ecx, 1
adc edx, 0
jne 0x1003c328
cmp ecx, 4
jb 0x1003c310
push 0x10078ca0
call fcn.10063830
add esp, 4
mov byte [ebp - 4], 0x5f
lea edi, [esi + 0x3fd4]
mov ecx, edi
call fcn.100573b0
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 0x1003c360
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x80]
call fcn.10060970
mov byte [ebp - 4], 0x61
mov eax, dword [esi + 0x1880]
mov dword [ebp - 0x20], 0xb65790d8
mov dword [ebp - 0x1c], 0x141ec10c
mov dword [ebp - 0x18], 0xba189387
mov word [ebp - 0x14], 0xb71e
test al, 1
jne 0x1003c3e9
or eax, 1
mov dword [esi + 0x1880], 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 + 0x3126], 1
nop
mov al, byte [ebp + ecx - 0x20]
mov byte [esi + ecx + 0x3118], al
add ecx, 1
adc edx, 0
jne 0x1003c3d8
cmp ecx, 0xe
jb 0x1003c3c0
push 0x10078cf0
call fcn.10063830
add esp, 4
mov byte [ebp - 4], 0x61
lea edi, [esi + 0x3118]
mov ecx, edi
call fcn.10057410
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 0x1003c416
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0xb0]
call fcn.10060970
push 0x10091514
lea edx, [ebp - 0xb0]
mov byte [ebp - 4], 0x63
lea ecx, [ebp - 0xe0]
call fcn.10060ac0
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.10061f50
sub esp, 0x18
mov byte [ebp - 4], 0x65
mov ecx, esp
mov dword [ebp - 0x30], esp
lea edx, [ebp - 0xc8]
push 0x10091574
call fcn.10060ac0
add esp, 4
mov byte [ebp - 4], 0x66
mov eax, dword [esi + 0x2e7c]
mov dword [ebp - 0x48], 0xb3469e9c
mov dword [ebp - 0x44], 0x4b4ad542
mov dword [ebp - 0x40], 0xbc098392
mov word [ebp - 0x3c], 0xda4c
mov byte [ebp - 0x3a], 0x2b
test al, 1
jne 0x1003c4f9
or eax, 1
mov dword [esi + 0x2e7c], 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 + 0x25cf], 1
nop
mov al, byte [ebp + ecx - 0x48]
mov byte [esi + ecx + 0x25c0], al
add ecx, 1
adc edx, 0
jne 0x1003c4e8
cmp ecx, 0xf
jb 0x1003c4d0
push 0x10078d40
call fcn.10063830
add esp, 4
mov byte [ebp - 4], 0x66
lea esi, [esi + 0x25c0]
mov ecx, esi
call fcn.10057470
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 0x1003c521
sub ecx, edi
push ecx
push esi
mov ecx, edx
call fcn.10060970
mov ecx, dword [0x10093804]
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 0x1003c57f
mov ecx, dword [ebp - 0xc8]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003c575
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003c675
push edx
push ecx
call fcn.10063779
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 0x1003c5d8
mov ecx, dword [ebp - 0xe0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003c5ce
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003c675
push edx
push ecx
call fcn.10063779
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 0x1003c62d
mov ecx, dword [ebp - 0xb0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003c623
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003c675
push edx
push ecx
call fcn.10063779
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 0x1003c685
mov ecx, dword [ebp - 0x80]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003c67b
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x1003c67b
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.10063779
add esp, 8
mov ecx, dword [0x10097a00]
mov edx, 0x1009152c
cmp dword [0x10091540], 0x10
push 0x10098790
cmovae edx, dword [0x1009152c]
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.10062f29
mov esp, ebp
pop ebp
ret