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

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1006ae3b
mov eax, dword fs:[0]
push eax
sub esp, 0xd4
mov eax, dword [0x1008f00c]
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 [0x1008ff0c]
push 0x10096778
push 0
push 0
mov esi, dword [eax + ecx*4]
mov dword [ebp - 0x18], 0xc78ca685
mov eax, dword [esi + 0x28b8]
test al, 1
jne 0x100396ac
or eax, 1
mov dword [esi + 0x28b8], 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 + 0x2e9c], 1
nop dword [eax]
mov al, byte [ebp + ecx - 0x18]
mov byte [esi + ecx + 0x2e98], al
add ecx, 1
adc edx, 0
jne 0x10039698
cmp ecx, 4
jb 0x10039680
push 0x10078b00
call fcn.10063607
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x2e98]
mov ecx, edi
call fcn.10058530
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 0x100396d0
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x80]
call fcn.100605f0
mov dword [ebp - 4], 1
mov eax, dword [esi + 0x2cdc]
mov dword [ebp - 0x38], 0xaec1ac8c
mov dword [ebp - 0x34], 0x80c89712
mov dword [ebp - 0x30], 0xa28eafd3
mov word [ebp - 0x2c], 0xe100
test al, 1
jne 0x1003975a
or eax, 1
mov dword [esi + 0x2cdc], 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 + 0x2ed6], 1
mov al, byte [ebp + ecx - 0x38]
mov byte [esi + ecx + 0x2ec8], al
add ecx, 1
adc edx, 0
jne 0x10039749
cmp ecx, 0xe
jb 0x10039731
push 0x10078b50
call fcn.10063607
add esp, 4
mov byte [ebp - 4], 1
lea edi, [esi + 0x2ec8]
mov ecx, edi
call fcn.10058590
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 0x10039780
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x50]
call fcn.100605f0
push 0x1008f154
lea edx, [ebp - 0x50]
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x98]
call fcn.10060790
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.10061c50
sub esp, 0x18
mov byte [ebp - 4], 5
mov ecx, esp
mov dword [ebp - 0x18], esp
lea edx, [ebp - 0x68]
push 0x1008f574
call fcn.10060790
add esp, 4
mov byte [ebp - 4], 6
mov eax, dword [esi + 0x2184]
mov dword [ebp - 0x38], 0xabd0a2c8
mov dword [ebp - 0x34], 0xdf9c835c
mov dword [ebp - 0x30], 0xa49fbfc6
mov word [ebp - 0x2c], 0x8c52
mov byte [ebp - 0x2a], 0xfd
test al, 1
jne 0x10039859
or eax, 1
mov dword [esi + 0x2184], 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 + 0x1cab], 1
nop dword [eax]
mov al, byte [ebp + ecx - 0x38]
mov byte [esi + ecx + 0x1c9c], al
add ecx, 1
adc edx, 0
jne 0x10039848
cmp ecx, 0xf
jb 0x10039830
push 0x10078ba0
call fcn.10063607
add esp, 4
mov byte [ebp - 4], 6
lea edi, [esi + 0x1c9c]
mov ecx, edi
call fcn.100585f0
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 0x10039881
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.100605f0
mov ecx, dword [0x100917fc]
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 0x100398da
mov ecx, dword [ebp - 0x68]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100398d0
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100399b8
push edx
push ecx
call fcn.10063550
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 0x1003992a
mov ecx, dword [ebp - 0x98]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10039920
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100399b8
push edx
push ecx
call fcn.10063550
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 0x10039979
mov ecx, dword [ebp - 0x50]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003996f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100399b8
push edx
push ecx
call fcn.10063550
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 0x100399c8
mov ecx, dword [ebp - 0x80]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100399be
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x100399be
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.10063550
add esp, 8
mov ecx, dword [0x100959f0]
mov edx, 0x1008f52c
cmp dword [0x1008f540], 0x10
push 0x10096778
cmovae edx, dword [0x1008f52c]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x1003bd29
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0xd34]
mov dword [ebp - 0x18], 0xe1e25437
push 0x10096778
push 0
push 0
test al, 1
jne 0x10039a6c
or eax, 1
mov dword [esi + 0xd34], 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 + 0xd64], 1
nop
mov al, byte [ebp + ecx - 0x18]
mov byte [esi + ecx + 0xd60], al
add ecx, 1
adc edx, 0
jne 0x10039a58
cmp ecx, 4
jb 0x10039a40
push 0x10078a10
call fcn.10063607
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0xd60]
mov ecx, edi
call fcn.10058410
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 0x10039a90
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x68]
call fcn.100605f0
mov dword [ebp - 4], 9
mov eax, dword [esi + 0xe58]
mov dword [ebp - 0x38], 0x88af5e3e
mov dword [ebp - 0x34], 0xce283506
mov dword [ebp - 0x30], 0x84e05d61
mov word [ebp - 0x2c], 0x4314
test al, 1
jne 0x10039b1a
or eax, 1
mov dword [esi + 0xe58], 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 + 0xe76], 1
mov al, byte [ebp + ecx - 0x38]
mov byte [ecx + esi + 0xe68], al
add ecx, 1
adc edx, 0
jne 0x10039b09
cmp ecx, 0xe
jb 0x10039af1
push 0x10078a60
call fcn.10063607
add esp, 4
mov byte [ebp - 4], 9
lea edi, [esi + 0xe68]
mov ecx, edi
call fcn.10058470
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 0x10039b40
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x50]
call fcn.100605f0
push 0x1008f344
lea edx, [ebp - 0x50]
mov byte [ebp - 4], 0xb
lea ecx, [ebp - 0x98]
call fcn.10060790
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.10061c50
sub esp, 0x18
mov byte [ebp - 4], 0xd
mov ecx, esp
mov dword [ebp - 0x30], esp
lea edx, [ebp - 0x80]
push 0x1008f574
call fcn.10060790
add esp, 4
mov byte [ebp - 4], 0xe
mov eax, dword [esi + 0x36ac]
mov dword [ebp - 0x20], 0x8dbe507a
mov dword [ebp - 0x1c], 0x917c2148
mov dword [ebp - 0x18], 0x82f14d74
mov word [ebp - 0x14], 0x2e46
mov byte [ebp - 0x12], 0x1d
test al, 1
jne 0x10039c19
or eax, 1
mov dword [esi + 0x36ac], 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 + 0x3de3], 1
nop dword [eax]
mov al, byte [ebp + ecx - 0x20]
mov byte [ecx + esi + 0x3dd4], al
add ecx, 1
adc edx, 0
jne 0x10039c08
cmp ecx, 0xf
jb 0x10039bf0
push 0x10078ab0
call fcn.10063607
add esp, 4
mov byte [ebp - 4], 0xe
lea edi, [esi + 0x3dd4]
mov ecx, edi
call fcn.100584d0
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 0x10039c41
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.100605f0
mov ecx, dword [0x100917fc]
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 0x10039c9a
mov ecx, dword [ebp - 0x80]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10039c90
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10039d78
push edx
push ecx
call fcn.10063550
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 0x10039cea
mov ecx, dword [ebp - 0x98]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10039ce0
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10039d78
push edx
push ecx
call fcn.10063550
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 0x10039d39
mov ecx, dword [ebp - 0x50]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10039d2f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10039d78
push edx
push ecx
call fcn.10063550
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 0x10039d88
mov ecx, dword [ebp - 0x68]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10039d7e
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x10039d7e
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.10063550
add esp, 8
mov ecx, dword [0x100959f0]
mov edx, 0x1008f52c
cmp dword [0x1008f540], 0x10
push 0x10096778
cmovae edx, dword [0x1008f52c]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x1003bd29
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x82c]
mov dword [ebp - 0x18], 0x290084ab
push 0x10096778
push 0
push 0
test al, 1
jne 0x10039e2c
or eax, 1
mov dword [esi + 0x82c], 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 + 0x17b0], 1
nop
mov al, byte [ebp + ecx - 0x18]
mov byte [ecx + esi + 0x17ac], al
add ecx, 1
adc edx, 0
jne 0x10039e18
cmp ecx, 4
jb 0x10039e00
push 0x10078920
call fcn.10063607
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x17ac]
mov ecx, edi
call fcn.100582f0
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 0x10039e50
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x68]
call fcn.100605f0
mov dword [ebp - 4], 0x11
mov eax, dword [esi + 0x3600]
mov dword [ebp - 0x38], 0x404d8ea2
mov dword [ebp - 0x34], 0x508483a0
mov dword [ebp - 0x30], 0x4c028dfd
mov word [ebp - 0x2c], 0xf5b2
test al, 1
jne 0x10039eda
or eax, 1
mov dword [esi + 0x3600], 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 + 0x13f6], 1
mov al, byte [ebp + ecx - 0x38]
mov byte [ecx + esi + 0x13e8], al
add ecx, 1
adc edx, 0
jne 0x10039ec9
cmp ecx, 0xe
jb 0x10039eb1
push 0x10078970
call fcn.10063607
add esp, 4
mov byte [ebp - 4], 0x11
lea edi, [esi + 0x13e8]
mov ecx, edi
call fcn.10058350
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 0x10039f00
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x50]
call fcn.100605f0
push 0x1008f514
lea edx, [ebp - 0x50]
mov byte [ebp - 4], 0x13
lea ecx, [ebp - 0x98]
call fcn.10060790
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.10061c50
sub esp, 0x18
mov byte [ebp - 4], 0x15
mov ecx, esp
mov dword [ebp - 0x30], esp
lea edx, [ebp - 0x80]
push 0x1008f574
call fcn.10060790
add esp, 4
mov byte [ebp - 4], 0x16
mov eax, dword [esi + 0x3a5c]
mov dword [ebp - 0x20], 0x455c80e6
mov dword [ebp - 0x1c], 0xfd097ee
mov dword [ebp - 0x18], 0x4a139de8
mov word [ebp - 0x14], 0x98e0
mov byte [ebp - 0x12], 0xb1
test al, 1
jne 0x10039fd9
or eax, 1
mov dword [esi + 0x3a5c], 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 + 0xaa3], 1
nop dword [eax]
mov al, byte [ebp + ecx - 0x20]
mov byte [ecx + esi + 0xa94], al
add ecx, 1
adc edx, 0
jne 0x10039fc8
cmp ecx, 0xf
jb 0x10039fb0
push 0x100789c0
call fcn.10063607
add esp, 4
mov byte [ebp - 4], 0x16
lea edi, [esi + 0xa94]
mov ecx, edi
call fcn.100583b0
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 0x1003a001
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.100605f0
mov ecx, dword [0x100917fc]
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 0x1003a05a
mov ecx, dword [ebp - 0x80]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003a050
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003a138
push edx
push ecx
call fcn.10063550
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 0x1003a0aa
mov ecx, dword [ebp - 0x98]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003a0a0
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003a138
push edx
push ecx
call fcn.10063550
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 0x1003a0f9
mov ecx, dword [ebp - 0x50]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003a0ef
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003a138
push edx
push ecx
call fcn.10063550
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 0x1003a148
mov ecx, dword [ebp - 0x68]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003a13e
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x1003a13e
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.10063550
add esp, 8
mov ecx, dword [0x100959f0]
mov edx, 0x1008f52c
cmp dword [0x1008f540], 0x10
push 0x10096778
cmovae edx, dword [0x1008f52c]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x1003bd29
mov ecx, 0x10096778
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1003a180
sub ecx, edx
cmp ecx, 0x20
jae 0x1003a197
cmp ecx, 1
ja 0x1003bd29
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x1434]
mov dword [ebp - 0x34], 0xa74377cf
mov dword [ebp - 0x30], 0x82dca112
mov byte [ebp - 0x2c], 0xa7
push 0x10096778
test al, 1
jne 0x1003a21c
or eax, 1
mov dword [esi + 0x1434], 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 + 0x1c49], 1
nop dword [eax + eax]
mov al, byte [ebp + ecx - 0x34]
mov byte [ecx + esi + 0x1c40], al
add ecx, 1
adc edx, 0
jne 0x1003a208
cmp ecx, 9
jb 0x1003a1f0
push 0x100787e0
call fcn.10063607
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x1c40]
mov ecx, edi
call fcn.10058170
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 0x1003a247
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.100605f0
mov dword [ebp - 4], 0x19
mov eax, dword [esi + 0x19f4]
mov dword [ebp - 0x18], 0xd70a6881
test al, 1
jne 0x1003a2c9
or eax, 1
mov dword [esi + 0x19f4], 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 + 0x2f5c], 1
nop dword [eax]
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x18]
mov byte [ecx + esi + 0x2f58], al
add ecx, 1
adc edx, 0
jne 0x1003a2b8
cmp ecx, 4
jb 0x1003a2a0
push 0x10078830
call fcn.10063607
add esp, 4
mov byte [ebp - 4], 0x19
lea edi, [esi + 0x2f58]
mov ecx, edi
call fcn.100581d0
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 0x1003a2f6
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0xb0]
call fcn.100605f0
mov byte [ebp - 4], 0x1b
mov eax, dword [esi + 0x226c]
mov dword [ebp - 0x20], 0xbe476288
mov dword [ebp - 0x1c], 0x82c6ed4e
mov dword [ebp - 0x18], 0xb20861d7
mov word [ebp - 0x14], 0x9b5c
test al, 1
jne 0x1003a389
or eax, 1
mov dword [esi + 0x226c], 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 + 0xa6], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x20]
mov byte [ecx + esi + 0x98], al
add ecx, 1
adc edx, 0
jne 0x1003a378
cmp ecx, 0xe
jb 0x1003a360
push 0x10078880
call fcn.10063607
add esp, 4
mov byte [ebp - 4], 0x1b
lea edi, [esi + 0x98]
mov ecx, edi
call fcn.10058230
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 0x1003a3b0
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x68]
call fcn.100605f0
push 0x1008f154
lea edx, [ebp - 0x68]
mov byte [ebp - 4], 0x1d
lea ecx, [ebp - 0x98]
call fcn.10060790
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.10061c50
sub esp, 0x18
mov byte [ebp - 4], 0x1f
mov ecx, esp
mov dword [ebp - 0x18], esp
lea edx, [ebp - 0x80]
push 0x1008f574
call fcn.10060790
add esp, 4
mov byte [ebp - 4], 0x20
mov eax, dword [esi + 0x2e00]
mov dword [ebp - 0x48], 0xbb566ccc
mov dword [ebp - 0x44], 0xdd92f900
mov dword [ebp - 0x40], 0xb41971c2
mov word [ebp - 0x3c], 0xf60e
mov byte [ebp - 0x3a], 0xf3
test al, 1
jne 0x1003a489
or eax, 1
mov dword [esi + 0x2e00], 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 + 0x1063], 1
nop
mov al, byte [ebp + ecx - 0x48]
mov byte [ecx + esi + 0x1054], al
add ecx, 1
adc edx, 0
jne 0x1003a478
cmp ecx, 0xf
jb 0x1003a460
push 0x100788d0
call fcn.10063607
add esp, 4
mov byte [ebp - 4], 0x20
lea edi, [esi + 0x1054]
mov ecx, edi
call fcn.10058290
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 0x1003a4b1
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.100605f0
mov ecx, dword [0x100917fc]
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 0x1003a509
mov ecx, dword [ebp - 0x80]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003a4ff
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003a5ed
push edx
push ecx
call fcn.10063550
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 0x1003a559
mov ecx, dword [ebp - 0x98]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003a54f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003a5ed
push edx
push ecx
call fcn.10063550
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 0x1003a5a8
mov ecx, dword [ebp - 0x68]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003a59e
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003a5ed
push edx
push ecx
call fcn.10063550
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 0x1003a5fd
mov ecx, dword [ebp - 0xb0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003a5f3
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x1003a5f3
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.10063550
add esp, 8
mov ecx, dword [0x100959f0]
mov edx, 0x1008f52c
cmp dword [0x1008f540], 0x10
push 0x10096778
cmovae edx, dword [0x1008f52c]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x1003bd29
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x32d8]
mov dword [ebp - 0x34], 0x334bafa7
mov dword [ebp - 0x30], 0xca0a6738
mov byte [ebp - 0x2c], 0xcf
push 0x10096778
test al, 1
jne 0x1003a6ac
or eax, 1
mov dword [esi + 0x32d8], 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 + 0x294d], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x34]
mov byte [esi + ecx + 0x2944], al
add ecx, 1
adc edx, 0
jne 0x1003a698
cmp ecx, 9
jb 0x1003a680
push 0x100786a0
call fcn.10063607
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x2944]
mov ecx, edi
call fcn.10057ff0
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 0x1003a6d7
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.100605f0
mov dword [ebp - 4], 0x27
mov eax, dword [esi + 0x2b3c]
mov dword [ebp - 0x18], 0x4302b0e9
test al, 1
jne 0x1003a759
or eax, 1
mov dword [esi + 0x2b3c], 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 + 0x10a8], 1
nop dword [eax]
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x18]
mov byte [esi + ecx + 0x10a4], al
add ecx, 1
adc edx, 0
jne 0x1003a748
cmp ecx, 4
jb 0x1003a730
push 0x100786f0
call fcn.10063607
add esp, 4
mov byte [ebp - 4], 0x27
lea edi, [esi + 0x10a4]
mov ecx, edi
call fcn.10058050
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 0x1003a786
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0xb0]
call fcn.100605f0
mov byte [ebp - 4], 0x29
mov eax, dword [esi + 0x1050]
mov dword [ebp - 0x20], 0x2a4fbae0
mov dword [ebp - 0x1c], 0xca102b64
mov dword [ebp - 0x18], 0x2600b9bf
mov word [ebp - 0x14], 0x5d76
test al, 1
jne 0x1003a819
or eax, 1
mov dword [esi + 0x1050], 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 + 0x9de], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x20]
mov byte [esi + ecx + 0x9d0], al
add ecx, 1
adc edx, 0
jne 0x1003a808
cmp ecx, 0xe
jb 0x1003a7f0
push 0x10078740
call fcn.10063607
add esp, 4
mov byte [ebp - 4], 0x29
lea edi, [esi + 0x9d0]
mov ecx, edi
call fcn.100580b0
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 0x1003a840
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x68]
call fcn.100605f0
push 0x1008f344
lea edx, [ebp - 0x68]
mov byte [ebp - 4], 0x2b
lea ecx, [ebp - 0x98]
call fcn.10060790
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.10061c50
sub esp, 0x18
mov byte [ebp - 4], 0x2d
mov ecx, esp
mov dword [ebp - 0x30], esp
lea edx, [ebp - 0x80]
push 0x1008f574
call fcn.10060790
add esp, 4
mov byte [ebp - 4], 0x2e
mov eax, dword [esi + 0x21d0]
mov dword [ebp - 0x48], 0x2f5eb4a4
mov dword [ebp - 0x44], 0x95443f2a
mov dword [ebp - 0x40], 0x2011a9aa
mov word [ebp - 0x3c], 0x3024
mov byte [ebp - 0x3a], 0x25
test al, 1
jne 0x1003a919
or eax, 1
mov dword [esi + 0x21d0], 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 + 0x3c1f], 1
nop
mov al, byte [ebp + ecx - 0x48]
mov byte [esi + ecx + 0x3c10], al
add ecx, 1
adc edx, 0
jne 0x1003a908
cmp ecx, 0xf
jb 0x1003a8f0
push 0x10078790
call fcn.10063607
add esp, 4
mov byte [ebp - 4], 0x2e
lea edi, [esi + 0x3c10]
mov ecx, edi
call fcn.10058110
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 0x1003a941
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.100605f0
mov ecx, dword [0x100917fc]
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 0x1003a999
mov ecx, dword [ebp - 0x80]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003a98f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003aa7d
push edx
push ecx
call fcn.10063550
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 0x1003a9e9
mov ecx, dword [ebp - 0x98]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003a9df
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003aa7d
push edx
push ecx
call fcn.10063550
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 0x1003aa38
mov ecx, dword [ebp - 0x68]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003aa2e
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003aa7d
push edx
push ecx
call fcn.10063550
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 0x1003aa8d
mov ecx, dword [ebp - 0xb0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003aa83
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x1003aa83
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.10063550
add esp, 8
mov ecx, dword [0x100959f0]
mov edx, 0x1008f52c
cmp dword [0x1008f540], 0x10
push 0x10096778
cmovae edx, dword [0x1008f52c]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x1003bd29
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0xffc]
mov dword [ebp - 0x34], 0x4719794d
mov dword [ebp - 0x30], 0xd040692e
mov byte [ebp - 0x2c], 0x25
push 0x10096778
test al, 1
jne 0x1003ab3c
or eax, 1
mov dword [esi + 0xffc], 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 + 0x330d], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x34]
mov byte [esi + ecx + 0x3304], al
add ecx, 1
adc edx, 0
jne 0x1003ab28
cmp ecx, 9
jb 0x1003ab10
push 0x10078560
call fcn.10063607
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x3304]
mov ecx, edi
call fcn.10057e70
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 0x1003ab67
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.100605f0
mov dword [ebp - 4], 0x35
mov eax, dword [esi + 0xdd8]
mov dword [ebp - 0x18], 0x37506603
test al, 1
jne 0x1003abe9
or eax, 1
mov dword [esi + 0xdd8], 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 + 0xe4c], 1
nop dword [eax]
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x18]
mov byte [esi + ecx + 0xe48], al
add ecx, 1
adc edx, 0
jne 0x1003abd8
cmp ecx, 4
jb 0x1003abc0
push 0x100785b0
call fcn.10063607
add esp, 4
mov byte [ebp - 4], 0x35
lea edi, [esi + 0xe48]
mov ecx, edi
call fcn.10057ed0
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 0x1003ac16
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0xb0]
call fcn.100605f0
mov byte [ebp - 4], 0x37
mov eax, dword [esi + 0x658]
mov dword [ebp - 0x20], 0x5e1d6c0a
mov dword [ebp - 0x1c], 0xd05a2572
mov dword [ebp - 0x18], 0x52526f55
mov word [ebp - 0x14], 0x5360
test al, 1
jne 0x1003aca9
or eax, 1
mov dword [esi + 0x658], 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 + 0x38ce], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x20]
mov byte [esi + ecx + 0x38c0], al
add ecx, 1
adc edx, 0
jne 0x1003ac98
cmp ecx, 0xe
jb 0x1003ac80
push 0x10078600
call fcn.10063607
add esp, 4
mov byte [ebp - 4], 0x37
lea edi, [esi + 0x38c0]
mov ecx, edi
call fcn.10057f30
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 0x1003acd0
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x68]
call fcn.100605f0
push 0x1008f514
lea edx, [ebp - 0x68]
mov byte [ebp - 4], 0x39
lea ecx, [ebp - 0x98]
call fcn.10060790
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.10061c50
sub esp, 0x18
mov byte [ebp - 4], 0x3b
mov ecx, esp
mov dword [ebp - 0x30], esp
lea edx, [ebp - 0x80]
push 0x1008f574
call fcn.10060790
add esp, 4
mov byte [ebp - 4], 0x3c
mov eax, dword [esi + 0x3808]
mov dword [ebp - 0x48], 0x5b0c624e
mov dword [ebp - 0x44], 0x8f0e313c
mov dword [ebp - 0x40], 0x54437f40
mov word [ebp - 0x3c], 0x3e32
mov byte [ebp - 0x3a], 0x6f
test al, 1
jne 0x1003ada9
or eax, 1
mov dword [esi + 0x3808], 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 + 0x98f], 1
nop
mov al, byte [ebp + ecx - 0x48]
mov byte [esi + ecx + 0x980], al
add ecx, 1
adc edx, 0
jne 0x1003ad98
cmp ecx, 0xf
jb 0x1003ad80
push 0x10078650
call fcn.10063607
add esp, 4
mov byte [ebp - 4], 0x3c
lea edi, [esi + 0x980]
mov ecx, edi
call fcn.10057f90
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 0x1003add1
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.100605f0
mov ecx, dword [0x100917fc]
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 0x1003ae29
mov ecx, dword [ebp - 0x80]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003ae1f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003af0d
push edx
push ecx
call fcn.10063550
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 0x1003ae79
mov ecx, dword [ebp - 0x98]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003ae6f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003af0d
push edx
push ecx
call fcn.10063550
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 0x1003aec8
mov ecx, dword [ebp - 0x68]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003aebe
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003af0d
push edx
push ecx
call fcn.10063550
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 0x1003af1d
mov ecx, dword [ebp - 0xb0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003af13
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x1003af13
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.10063550
add esp, 8
mov ecx, dword [0x100959f0]
mov edx, 0x1008f52c
cmp dword [0x1008f540], 0x10
push 0x10096778
cmovae edx, dword [0x1008f52c]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x1003bd29
mov ecx, 0x10096778
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1003af51
sub ecx, edx
cmp ecx, 0x20
jae 0x1003af68
cmp ecx, 1
ja 0x1003bd29
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0xf4]
mov dword [ebp - 0x28], 0x387c3f5
mov dword [ebp - 0x24], 0x8bfe4ed1
push 0x10096778
test al, 1
jne 0x1003afec
or eax, 1
mov dword [esi + 0xf4], 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 + 0x2aa8], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x28]
mov byte [esi + ecx + 0x2aa0], al
add ecx, 1
adc edx, 0
jne 0x1003afd8
cmp ecx, 8
jb 0x1003afc0
push 0x10078420
call fcn.10063607
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x2aa0]
mov ecx, edi
call fcn.10057cf0
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 0x1003b017
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.100605f0
mov dword [ebp - 4], 0x43
mov eax, dword [esi + 0x2154]
mov dword [ebp - 0x18], 0x73cedcbb
test al, 1
jne 0x1003b099
or eax, 1
mov dword [esi + 0x2154], 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 + 0x2c6c], 1
nop dword [eax]
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x18]
mov byte [esi + ecx + 0x2c68], al
add ecx, 1
adc edx, 0
jne 0x1003b088
cmp ecx, 4
jb 0x1003b070
push 0x10078470
call fcn.10063607
add esp, 4
mov byte [ebp - 4], 0x43
lea edi, [esi + 0x2c68]
mov ecx, edi
call fcn.10057d50
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 0x1003b0c6
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0xb0]
call fcn.100605f0
mov byte [ebp - 4], 0x45
mov eax, dword [esi + 0x111c]
mov dword [ebp - 0x20], 0x1a83d6b2
mov dword [ebp - 0x1c], 0xa4e417c4
mov dword [ebp - 0x18], 0x16ccd5ed
mov word [ebp - 0x14], 0x61d6
test al, 1
jne 0x1003b159
or eax, 1
mov dword [esi + 0x111c], 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 + 0x3876], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x20]
mov byte [ecx + esi + 0x3868], al
add ecx, 1
adc edx, 0
jne 0x1003b148
cmp ecx, 0xe
jb 0x1003b130
push 0x100784c0
call fcn.10063607
add esp, 4
mov byte [ebp - 4], 0x45
lea edi, [esi + 0x3868]
mov ecx, edi
call fcn.10057db0
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 0x1003b180
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x68]
call fcn.100605f0
push 0x1008f154
lea edx, [ebp - 0x68]
mov byte [ebp - 4], 0x47
lea ecx, [ebp - 0x98]
call fcn.10060790
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.10061c50
sub esp, 0x18
mov byte [ebp - 4], 0x49
mov ecx, esp
mov dword [ebp - 0x30], esp
lea edx, [ebp - 0x80]
push 0x1008f574
call fcn.10060790
add esp, 4
mov byte [ebp - 4], 0x4a
mov eax, dword [esi + 0x118c]
mov dword [ebp - 0x48], 0x1f92d8f6
mov dword [ebp - 0x44], 0xfbb0038a
mov dword [ebp - 0x40], 0x10ddc5f8
mov word [ebp - 0x3c], 0xc84
mov byte [ebp - 0x3a], 0xd1
test al, 1
jne 0x1003b259
or eax, 1
mov dword [esi + 0x118c], 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 + 0x3c87], 1
nop
mov al, byte [ebp + ecx - 0x48]
mov byte [ecx + esi + 0x3c78], al
add ecx, 1
adc edx, 0
jne 0x1003b248
cmp ecx, 0xf
jb 0x1003b230
push 0x10078510
call fcn.10063607
add esp, 4
mov byte [ebp - 4], 0x4a
lea edi, [esi + 0x3c78]
mov ecx, edi
call fcn.10057e10
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 0x1003b281
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.100605f0
mov ecx, dword [0x100917fc]
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 0x1003b2d9
mov ecx, dword [ebp - 0x80]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003b2cf
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003b3bd
push edx
push ecx
call fcn.10063550
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 0x1003b329
mov ecx, dword [ebp - 0x98]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003b31f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003b3bd
push edx
push ecx
call fcn.10063550
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 0x1003b378
mov ecx, dword [ebp - 0x68]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003b36e
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003b3bd
push edx
push ecx
call fcn.10063550
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 0x1003b3cd
mov ecx, dword [ebp - 0xb0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003b3c3
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x1003b3c3
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.10063550
add esp, 8
mov ecx, dword [0x100959f0]
mov edx, 0x1008f52c
cmp dword [0x1008f540], 0x10
push 0x10096778
cmovae edx, dword [0x1008f52c]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x1003bd29
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x444]
mov dword [ebp - 0x28], 0x3f9569dd
mov dword [ebp - 0x24], 0xab7690db
push 0x10096778
test al, 1
jne 0x1003b47c
or eax, 1
mov dword [esi + 0x444], 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 + 0x1048], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x28]
mov byte [ecx + esi + 0x1040], al
add ecx, 1
adc edx, 0
jne 0x1003b468
cmp ecx, 8
jb 0x1003b450
push 0x100782e0
call fcn.10063607
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x1040]
mov ecx, edi
call fcn.10057b70
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 0x1003b4a7
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.100605f0
mov dword [ebp - 4], 0x51
mov eax, dword [esi + 0x3770]
mov dword [ebp - 0x18], 0x4fdc7693
test al, 1
jne 0x1003b529
or eax, 1
mov dword [esi + 0x3770], 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 + 0x26a4], 1
nop dword [eax]
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x18]
mov byte [ecx + esi + 0x26a0], al
add ecx, 1
adc edx, 0
jne 0x1003b518
cmp ecx, 4
jb 0x1003b500
push 0x10078330
call fcn.10063607
add esp, 4
mov byte [ebp - 4], 0x51
lea edi, [esi + 0x26a0]
mov ecx, edi
call fcn.10057bd0
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 0x1003b556
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0xb0]
call fcn.100605f0
mov byte [ebp - 4], 0x53
mov eax, dword [esi + 0x11f8]
mov dword [ebp - 0x20], 0x26917c9a
mov dword [ebp - 0x1c], 0x846cc9ce
mov dword [ebp - 0x18], 0x2ade7fc5
mov word [ebp - 0x14], 0xbfdc
test al, 1
jne 0x1003b5e9
or eax, 1
mov dword [esi + 0x11f8], 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 + 0x1186], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x20]
mov byte [ecx + esi + 0x1178], al
add ecx, 1
adc edx, 0
jne 0x1003b5d8
cmp ecx, 0xe
jb 0x1003b5c0
push 0x10078380
call fcn.10063607
add esp, 4
mov byte [ebp - 4], 0x53
lea edi, [esi + 0x1178]
mov ecx, edi
call fcn.10057c30
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 0x1003b610
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x68]
call fcn.100605f0
push 0x1008f344
lea edx, [ebp - 0x68]
mov byte [ebp - 4], 0x55
lea ecx, [ebp - 0x98]
call fcn.10060790
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.10061c50
sub esp, 0x18
mov byte [ebp - 4], 0x57
mov ecx, esp
mov dword [ebp - 0x30], esp
lea edx, [ebp - 0x80]
push 0x1008f574
call fcn.10060790
add esp, 4
mov byte [ebp - 4], 0x58
mov eax, dword [esi + 0x20e0]
mov dword [ebp - 0x48], 0x238072de
mov dword [ebp - 0x44], 0xdb38dd80
mov dword [ebp - 0x40], 0x2ccf6fd0
mov word [ebp - 0x3c], 0xd28e
mov byte [ebp - 0x3a], 0x59
test al, 1
jne 0x1003b6e9
or eax, 1
mov dword [esi + 0x20e0], 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 + 0xf07], 1
nop
mov al, byte [ebp + ecx - 0x48]
mov byte [ecx + esi + 0xef8], al
add ecx, 1
adc edx, 0
jne 0x1003b6d8
cmp ecx, 0xf
jb 0x1003b6c0
push 0x100783d0
call fcn.10063607
add esp, 4
mov byte [ebp - 4], 0x58
lea edi, [esi + 0xef8]
mov ecx, edi
call fcn.10057c90
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 0x1003b711
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.100605f0
mov ecx, dword [0x100917fc]
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 0x1003b769
mov ecx, dword [ebp - 0x80]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003b75f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003b84d
push edx
push ecx
call fcn.10063550
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 0x1003b7b9
mov ecx, dword [ebp - 0x98]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003b7af
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003b84d
push edx
push ecx
call fcn.10063550
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 0x1003b808
mov ecx, dword [ebp - 0x68]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003b7fe
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003b84d
push edx
push ecx
call fcn.10063550
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 0x1003b85d
mov ecx, dword [ebp - 0xb0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003b853
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x1003b853
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.10063550
add esp, 8
mov ecx, dword [0x100959f0]
mov edx, 0x1008f52c
cmp dword [0x1008f540], 0x10
push 0x10096778
cmovae edx, dword [0x1008f52c]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x1003bd29
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x3e38]
mov dword [ebp - 0x28], 0xa167292b
mov dword [ebp - 0x24], 0xe7023a77
push 0x10096778
test al, 1
jne 0x1003b90c
or eax, 1
mov dword [esi + 0x3e38], 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 + 0x10d0], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x28]
mov byte [esi + ecx + 0x10c8], al
add ecx, 1
adc edx, 0
jne 0x1003b8f8
cmp ecx, 8
jb 0x1003b8e0
push 0x100781a0
call fcn.10063607
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x10c8]
mov ecx, edi
call fcn.100579f0
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 0x1003b937
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.100605f0
mov dword [ebp - 4], 0x5f
mov eax, dword [esi + 0xac]
mov dword [ebp - 0x18], 0xd12e3665
test al, 1
jne 0x1003b9b9
or eax, 1
mov dword [esi + 0xac], 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 + 0x4dc], 1
nop dword [eax]
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x18]
mov byte [esi + ecx + 0x4d8], al
add ecx, 1
adc edx, 0
jne 0x1003b9a8
cmp ecx, 4
jb 0x1003b990
push 0x100781f0
call fcn.10063607
add esp, 4
mov byte [ebp - 4], 0x5f
lea edi, [esi + 0x4d8]
mov ecx, edi
call fcn.10057a50
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 0x1003b9e0
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x80]
call fcn.100605f0
mov byte [ebp - 4], 0x61
mov eax, dword [esi + 0x1f98]
mov dword [ebp - 0x20], 0xb8633c6c
mov dword [ebp - 0x1c], 0xc8186362
mov dword [ebp - 0x18], 0xb42c3f33
mov word [ebp - 0x14], 0x1570
test al, 1
jne 0x1003ba69
or eax, 1
mov dword [esi + 0x1f98], 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 + 0x33c6], 1
nop
mov al, byte [ebp + ecx - 0x20]
mov byte [esi + ecx + 0x33b8], al
add ecx, 1
adc edx, 0
jne 0x1003ba58
cmp ecx, 0xe
jb 0x1003ba40
push 0x10078240
call fcn.10063607
add esp, 4
mov byte [ebp - 4], 0x61
lea edi, [esi + 0x33b8]
mov ecx, edi
call fcn.10057ab0
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 0x1003ba96
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0xb0]
call fcn.100605f0
push 0x1008f514
lea edx, [ebp - 0xb0]
mov byte [ebp - 4], 0x63
lea ecx, [ebp - 0xe0]
call fcn.10060790
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.10061c50
sub esp, 0x18
mov byte [ebp - 4], 0x65
mov ecx, esp
mov dword [ebp - 0x30], esp
lea edx, [ebp - 0xc8]
push 0x1008f574
call fcn.10060790
add esp, 4
mov byte [ebp - 4], 0x66
mov eax, dword [esi + 0x32a8]
mov dword [ebp - 0x48], 0xbd723228
mov dword [ebp - 0x44], 0x974c772c
mov dword [ebp - 0x40], 0xb23d2f26
mov word [ebp - 0x3c], 0x7822
mov byte [ebp - 0x3a], 0x2d
test al, 1
jne 0x1003bb79
or eax, 1
mov dword [esi + 0x32a8], 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 + 0x1cdf], 1
nop
mov al, byte [ebp + ecx - 0x48]
mov byte [esi + ecx + 0x1cd0], al
add ecx, 1
adc edx, 0
jne 0x1003bb68
cmp ecx, 0xf
jb 0x1003bb50
push 0x10078290
call fcn.10063607
add esp, 4
mov byte [ebp - 4], 0x66
lea esi, [esi + 0x1cd0]
mov ecx, esi
call fcn.10057b10
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 0x1003bba1
sub ecx, edi
push ecx
push esi
mov ecx, edx
call fcn.100605f0
mov ecx, dword [0x100917fc]
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 0x1003bbff
mov ecx, dword [ebp - 0xc8]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003bbf5
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003bcf5
push edx
push ecx
call fcn.10063550
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 0x1003bc58
mov ecx, dword [ebp - 0xe0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003bc4e
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003bcf5
push edx
push ecx
call fcn.10063550
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 0x1003bcad
mov ecx, dword [ebp - 0xb0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003bca3
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003bcf5
push edx
push ecx
call fcn.10063550
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 0x1003bd05
mov ecx, dword [ebp - 0x80]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003bcfb
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x1003bcfb
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.10063550
add esp, 8
mov ecx, dword [0x100959f0]
mov edx, 0x1008f52c
cmp dword [0x1008f540], 0x10
push 0x10096778
cmovae edx, dword [0x1008f52c]
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.10062c29
mov esp, ebp
pop ebp
ret