Function at 0x10039e30
Capabilities:
Parse pe header

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1006b29b
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 0x10098788
push 0
push 0
mov esi, dword [eax + ecx*4]
mov dword [ebp - 0x18], 0xd12e3665
mov eax, dword [esi + 0x9c]
test al, 1
jne 0x10039edc
or eax, 1
mov dword [esi + 0x9c], 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 + 0x4fc], 1
nop dword [eax]
mov al, byte [ebp + ecx - 0x18]
mov byte [esi + ecx + 0x4f8], al
add ecx, 1
adc edx, 0
jne 0x10039ec8
cmp ecx, 4
jb 0x10039eb0
push 0x10079410
call fcn.100636df
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x4f8]
mov ecx, edi
call fcn.10057d40
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 0x10039f00
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x80]
call fcn.10060820
mov dword [ebp - 4], 1
mov eax, dword [esi + 0x20d8]
mov dword [ebp - 0x38], 0xb8633c6c
mov dword [ebp - 0x34], 0xc8186362
mov dword [ebp - 0x30], 0xb42c3f33
mov word [ebp - 0x2c], 0x1570
test al, 1
jne 0x10039f8a
or eax, 1
mov dword [esi + 0x20d8], 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 + 0x351a], 1
mov al, byte [ebp + ecx - 0x38]
mov byte [esi + ecx + 0x350c], al
add ecx, 1
adc edx, 0
jne 0x10039f79
cmp ecx, 0xe
jb 0x10039f61
push 0x10079460
call fcn.100636df
add esp, 4
mov byte [ebp - 4], 1
lea edi, [esi + 0x350c]
mov ecx, edi
call fcn.10057da0
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 0x10039fb0
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x50]
call fcn.10060820
push 0x10091154
lea edx, [ebp - 0x50]
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x98]
call fcn.10060970
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.10061e00
sub esp, 0x18
mov byte [ebp - 4], 5
mov ecx, esp
mov dword [ebp - 0x18], esp
lea edx, [ebp - 0x68]
push 0x10091574
call fcn.10060970
add esp, 4
mov byte [ebp - 4], 6
mov eax, dword [esi + 0x3340]
mov dword [ebp - 0x38], 0xbd723228
mov dword [ebp - 0x34], 0x974c772c
mov dword [ebp - 0x30], 0xb23d2f26
mov word [ebp - 0x2c], 0x7822
mov byte [ebp - 0x2a], 0x2d
test al, 1
jne 0x1003a089
or eax, 1
mov dword [esi + 0x3340], 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 + 0x1d9f], 1
nop dword [eax]
mov al, byte [ebp + ecx - 0x38]
mov byte [esi + ecx + 0x1d90], al
add ecx, 1
adc edx, 0
jne 0x1003a078
cmp ecx, 0xf
jb 0x1003a060
push 0x100794b0
call fcn.100636df
add esp, 4
mov byte [ebp - 4], 6
lea edi, [esi + 0x1d90]
mov ecx, edi
call fcn.10057e00
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 0x1003a0b1
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10060820
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 0x1003a10a
mov ecx, dword [ebp - 0x68]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003a100
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003a1e8
push edx
push ecx
call fcn.10063628
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 0x1003a15a
mov ecx, dword [ebp - 0x98]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003a150
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003a1e8
push edx
push ecx
call fcn.10063628
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 0x1003a1a9
mov ecx, dword [ebp - 0x50]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003a19f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003a1e8
push edx
push ecx
call fcn.10063628
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 0x1003a1f8
mov ecx, dword [ebp - 0x80]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003a1ee
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x1003a1ee
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.10063628
add esp, 8
mov ecx, dword [0x10097a00]
mov edx, 0x1009152c
cmp dword [0x10091540], 0x10
push 0x10098788
cmovae edx, dword [0x1009152c]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x1003c559
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x1180]
mov dword [ebp - 0x18], 0x634676bf
push 0x10098788
push 0
push 0
test al, 1
jne 0x1003a29c
or eax, 1
mov dword [esi + 0x1180], 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 + 0x4e0], 1
nop
mov al, byte [ebp + ecx - 0x18]
mov byte [esi + ecx + 0x4dc], al
add ecx, 1
adc edx, 0
jne 0x1003a288
cmp ecx, 4
jb 0x1003a270
push 0x10079320
call fcn.100636df
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x4dc]
mov ecx, edi
call fcn.10057c20
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 0x1003a2c0
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x68]
call fcn.10060820
mov dword [ebp - 4], 9
mov eax, dword [esi + 0x2790]
mov dword [ebp - 0x38], 0xa0b7cb6
mov dword [ebp - 0x34], 0x94d62f84
mov dword [ebp - 0x30], 0x6447fe9
mov word [ebp - 0x2c], 0x5996
test al, 1
jne 0x1003a34a
or eax, 1
mov dword [esi + 0x2790], 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 + 0x2dce], 1
mov al, byte [ebp + ecx - 0x38]
mov byte [ecx + esi + 0x2dc0], al
add ecx, 1
adc edx, 0
jne 0x1003a339
cmp ecx, 0xe
jb 0x1003a321
push 0x10079370
call fcn.100636df
add esp, 4
mov byte [ebp - 4], 9
lea edi, [esi + 0x2dc0]
mov ecx, edi
call fcn.10057c80
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 0x1003a370
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x50]
call fcn.10060820
push 0x10091344
lea edx, [ebp - 0x50]
mov byte [ebp - 4], 0xb
lea ecx, [ebp - 0x98]
call fcn.10060970
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.10061e00
sub esp, 0x18
mov byte [ebp - 4], 0xd
mov ecx, esp
mov dword [ebp - 0x30], esp
lea edx, [ebp - 0x80]
push 0x10091574
call fcn.10060970
add esp, 4
mov byte [ebp - 4], 0xe
mov eax, dword [esi + 0x8d8]
mov dword [ebp - 0x20], 0xf1a72f2
mov dword [ebp - 0x1c], 0xcb823bca
mov dword [ebp - 0x18], 0x556ffc
mov word [ebp - 0x14], 0x34c4
mov byte [ebp - 0x12], 0xe3
test al, 1
jne 0x1003a449
or eax, 1
mov dword [esi + 0x8d8], 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 + 0x1013], 1
nop dword [eax]
mov al, byte [ebp + ecx - 0x20]
mov byte [ecx + esi + 0x1004], al
add ecx, 1
adc edx, 0
jne 0x1003a438
cmp ecx, 0xf
jb 0x1003a420
push 0x100793c0
call fcn.100636df
add esp, 4
mov byte [ebp - 4], 0xe
lea edi, [esi + 0x1004]
mov ecx, edi
call fcn.10057ce0
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 0x1003a471
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10060820
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 0x1003a4ca
mov ecx, dword [ebp - 0x80]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003a4c0
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003a5a8
push edx
push ecx
call fcn.10063628
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 0x1003a51a
mov ecx, dword [ebp - 0x98]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003a510
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003a5a8
push edx
push ecx
call fcn.10063628
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 0x1003a569
mov ecx, dword [ebp - 0x50]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003a55f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003a5a8
push edx
push ecx
call fcn.10063628
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 0x1003a5b8
mov ecx, dword [ebp - 0x68]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003a5ae
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x1003a5ae
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.10063628
add esp, 8
mov ecx, dword [0x10097a00]
mov edx, 0x1009152c
cmp dword [0x10091540], 0x10
push 0x10098788
cmovae edx, dword [0x1009152c]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x1003c559
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x2e3c]
mov dword [ebp - 0x18], 0xef941aa3
push 0x10098788
push 0
push 0
test al, 1
jne 0x1003a65c
or eax, 1
mov dword [esi + 0x2e3c], 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 + 0x2d18], 1
nop
mov al, byte [ebp + ecx - 0x18]
mov byte [ecx + esi + 0x2d14], al
add ecx, 1
adc edx, 0
jne 0x1003a648
cmp ecx, 4
jb 0x1003a630
push 0x10079230
call fcn.100636df
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x2d14]
mov ecx, edi
call fcn.10057b00
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 0x1003a680
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x68]
call fcn.10060820
mov dword [ebp - 4], 0x11
mov eax, dword [esi + 0xdbc]
mov dword [ebp - 0x38], 0x86d910aa
mov dword [ebp - 0x34], 0xa000b3ec
mov dword [ebp - 0x30], 0x8a9613f5
mov word [ebp - 0x2c], 0xc5fe
test al, 1
jne 0x1003a70a
or eax, 1
mov dword [esi + 0xdbc], 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 + 0x14a6], 1
mov al, byte [ebp + ecx - 0x38]
mov byte [ecx + esi + 0x1498], al
add ecx, 1
adc edx, 0
jne 0x1003a6f9
cmp ecx, 0xe
jb 0x1003a6e1
push 0x10079280
call fcn.100636df
add esp, 4
mov byte [ebp - 4], 0x11
lea edi, [esi + 0x1498]
mov ecx, edi
call fcn.10057b60
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 0x1003a730
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x50]
call fcn.10060820
push 0x10091514
lea edx, [ebp - 0x50]
mov byte [ebp - 4], 0x13
lea ecx, [ebp - 0x98]
call fcn.10060970
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.10061e00
sub esp, 0x18
mov byte [ebp - 4], 0x15
mov ecx, esp
mov dword [ebp - 0x30], esp
lea edx, [ebp - 0x80]
push 0x10091574
call fcn.10060970
add esp, 4
mov byte [ebp - 4], 0x16
mov eax, dword [esi + 0x3408]
mov dword [ebp - 0x20], 0x83c81eee
mov dword [ebp - 0x1c], 0xff54a7a2
mov dword [ebp - 0x18], 0x8c8703e0
mov word [ebp - 0x14], 0xa8ac
mov byte [ebp - 0x12], 0x35
test al, 1
jne 0x1003a809
or eax, 1
mov dword [esi + 0x3408], 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 + 0x3037], 1
nop dword [eax]
mov al, byte [ebp + ecx - 0x20]
mov byte [ecx + esi + 0x3028], al
add ecx, 1
adc edx, 0
jne 0x1003a7f8
cmp ecx, 0xf
jb 0x1003a7e0
push 0x100792d0
call fcn.100636df
add esp, 4
mov byte [ebp - 4], 0x16
lea edi, [esi + 0x3028]
mov ecx, edi
call fcn.10057bc0
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 0x1003a831
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10060820
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 0x1003a88a
mov ecx, dword [ebp - 0x80]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003a880
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003a968
push edx
push ecx
call fcn.10063628
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 0x1003a8da
mov ecx, dword [ebp - 0x98]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003a8d0
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003a968
push edx
push ecx
call fcn.10063628
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 0x1003a929
mov ecx, dword [ebp - 0x50]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003a91f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003a968
push edx
push ecx
call fcn.10063628
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 0x1003a978
mov ecx, dword [ebp - 0x68]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003a96e
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x1003a96e
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.10063628
add esp, 8
mov ecx, dword [0x10097a00]
mov edx, 0x1009152c
cmp dword [0x10091540], 0x10
push 0x10098788
cmovae edx, dword [0x1009152c]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x1003c559
mov ecx, 0x10098788
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1003a9b0
sub ecx, edx
cmp ecx, 0x20
jae 0x1003a9c7
cmp ecx, 1
ja 0x1003c559
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x3968]
mov dword [ebp - 0x34], 0xb15f7b4f
mov dword [ebp - 0x30], 0xde7e75fc
mov byte [ebp - 0x2c], 0x27
push 0x10098788
test al, 1
jne 0x1003aa4c
or eax, 1
mov dword [esi + 0x3968], 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 + 0x65d], 1
nop dword [eax + eax]
mov al, byte [ebp + ecx - 0x34]
mov byte [ecx + esi + 0x654], al
add ecx, 1
adc edx, 0
jne 0x1003aa38
cmp ecx, 9
jb 0x1003aa20
push 0x100790f0
call fcn.100636df
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x654]
mov ecx, edi
call fcn.10057980
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 0x1003aa77
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10060820
mov dword [ebp - 4], 0x19
mov eax, dword [esi + 0x2ef0]
mov dword [ebp - 0x18], 0xc1166401
test al, 1
jne 0x1003aaf9
or eax, 1
mov dword [esi + 0x2ef0], 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 + 0x55c], 1
nop dword [eax]
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x18]
mov byte [ecx + esi + 0x558], al
add ecx, 1
adc edx, 0
jne 0x1003aae8
cmp ecx, 4
jb 0x1003aad0
push 0x10079140
call fcn.100636df
add esp, 4
mov byte [ebp - 4], 0x19
lea edi, [esi + 0x558]
mov ecx, edi
call fcn.100579e0
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 0x1003ab26
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0xb0]
call fcn.10060820
mov byte [ebp - 4], 0x1b
mov eax, dword [esi + 0x7e8]
mov dword [ebp - 0x20], 0xa85b6e08
mov dword [ebp - 0x1c], 0xde6439a0
mov dword [ebp - 0x18], 0xa4146d57
mov word [ebp - 0x14], 0x4fb2
test al, 1
jne 0x1003abb9
or eax, 1
mov dword [esi + 0x7e8], 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 + 0xe6], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x20]
mov byte [ecx + esi + 0xd8], al
add ecx, 1
adc edx, 0
jne 0x1003aba8
cmp ecx, 0xe
jb 0x1003ab90
push 0x10079190
call fcn.100636df
add esp, 4
mov byte [ebp - 4], 0x1b
lea edi, [esi + 0xd8]
mov ecx, edi
call fcn.10057a40
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 0x1003abe0
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x68]
call fcn.10060820
push 0x10091154
lea edx, [ebp - 0x68]
mov byte [ebp - 4], 0x1d
lea ecx, [ebp - 0x98]
call fcn.10060970
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.10061e00
sub esp, 0x18
mov byte [ebp - 4], 0x1f
mov ecx, esp
mov dword [ebp - 0x18], esp
lea edx, [ebp - 0x80]
push 0x10091574
call fcn.10060970
add esp, 4
mov byte [ebp - 4], 0x20
mov eax, dword [esi + 0x2c9c]
mov dword [ebp - 0x48], 0xad4a604c
mov dword [ebp - 0x44], 0x81302dee
mov dword [ebp - 0x40], 0xa2057d42
mov word [ebp - 0x3c], 0x22e0
mov byte [ebp - 0x3a], 0x51
test al, 1
jne 0x1003acb9
or eax, 1
mov dword [esi + 0x2c9c], 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 + 0x8f3], 1
nop
mov al, byte [ebp + ecx - 0x48]
mov byte [ecx + esi + 0x8e4], al
add ecx, 1
adc edx, 0
jne 0x1003aca8
cmp ecx, 0xf
jb 0x1003ac90
push 0x100791e0
call fcn.100636df
add esp, 4
mov byte [ebp - 4], 0x20
lea edi, [esi + 0x8e4]
mov ecx, edi
call fcn.10057aa0
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 0x1003ace1
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10060820
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 0x1003ad39
mov ecx, dword [ebp - 0x80]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003ad2f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003ae1d
push edx
push ecx
call fcn.10063628
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 0x1003ad89
mov ecx, dword [ebp - 0x98]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003ad7f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003ae1d
push edx
push ecx
call fcn.10063628
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 0x1003add8
mov ecx, dword [ebp - 0x68]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003adce
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003ae1d
push edx
push ecx
call fcn.10063628
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 0x1003ae2d
mov ecx, dword [ebp - 0xb0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003ae23
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x1003ae23
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.10063628
add esp, 8
mov ecx, dword [0x10097a00]
mov edx, 0x1009152c
cmp dword [0x10091540], 0x10
push 0x10098788
cmovae edx, dword [0x1009152c]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x1003c559
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x1be0]
mov dword [ebp - 0x34], 0xdd4d8d29
mov dword [ebp - 0x30], 0x3c64b770
mov byte [ebp - 0x2c], 0x41
push 0x10098788
test al, 1
jne 0x1003aedc
or eax, 1
mov dword [esi + 0x1be0], 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 + 0x2249], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x34]
mov byte [esi + ecx + 0x2240], al
add ecx, 1
adc edx, 0
jne 0x1003aec8
cmp ecx, 9
jb 0x1003aeb0
push 0x10078fb0
call fcn.100636df
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x2240]
mov ecx, edi
call fcn.10057800
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 0x1003af07
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10060820
mov dword [ebp - 4], 0x27
mov eax, dword [esi + 0x2884]
mov dword [ebp - 0x18], 0xad049267
test al, 1
jne 0x1003af89
or eax, 1
mov dword [esi + 0x2884], 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 + 0xd38], 1
nop dword [eax]
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x18]
mov byte [esi + ecx + 0xd34], al
add ecx, 1
adc edx, 0
jne 0x1003af78
cmp ecx, 4
jb 0x1003af60
push 0x10079000
call fcn.100636df
add esp, 4
mov byte [ebp - 4], 0x27
lea edi, [esi + 0xd34]
mov ecx, edi
call fcn.10057860
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 0x1003afb6
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0xb0]
call fcn.10060820
mov byte [ebp - 4], 0x29
mov eax, dword [esi + 0x1ae8]
mov dword [ebp - 0x20], 0xc449986e
mov dword [ebp - 0x1c], 0x3c7efb2c
mov dword [ebp - 0x18], 0xc8069b31
mov word [ebp - 0x14], 0x8d3e
test al, 1
jne 0x1003b049
or eax, 1
mov dword [esi + 0x1ae8], 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 + 0x386e], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x20]
mov byte [esi + ecx + 0x3860], al
add ecx, 1
adc edx, 0
jne 0x1003b038
cmp ecx, 0xe
jb 0x1003b020
push 0x10079050
call fcn.100636df
add esp, 4
mov byte [ebp - 4], 0x29
lea edi, [esi + 0x3860]
mov ecx, edi
call fcn.100578c0
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 0x1003b070
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x68]
call fcn.10060820
push 0x10091344
lea edx, [ebp - 0x68]
mov byte [ebp - 4], 0x2b
lea ecx, [ebp - 0x98]
call fcn.10060970
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.10061e00
sub esp, 0x18
mov byte [ebp - 4], 0x2d
mov ecx, esp
mov dword [ebp - 0x30], esp
lea edx, [ebp - 0x80]
push 0x10091574
call fcn.10060970
add esp, 4
mov byte [ebp - 4], 0x2e
mov eax, dword [esi + 0x36fc]
mov dword [ebp - 0x48], 0xc158962a
mov dword [ebp - 0x44], 0x632aef62
mov dword [ebp - 0x40], 0xce178b24
mov word [ebp - 0x3c], 0xe06c
mov byte [ebp - 0x3a], 0x4b
test al, 1
jne 0x1003b149
or eax, 1
mov dword [esi + 0x36fc], 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 + 0x16af], 1
nop
mov al, byte [ebp + ecx - 0x48]
mov byte [esi + ecx + 0x16a0], al
add ecx, 1
adc edx, 0
jne 0x1003b138
cmp ecx, 0xf
jb 0x1003b120
push 0x100790a0
call fcn.100636df
add esp, 4
mov byte [ebp - 4], 0x2e
lea edi, [esi + 0x16a0]
mov ecx, edi
call fcn.10057920
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 0x1003b171
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10060820
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 0x1003b1c9
mov ecx, dword [ebp - 0x80]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003b1bf
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003b2ad
push edx
push ecx
call fcn.10063628
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 0x1003b219
mov ecx, dword [ebp - 0x98]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003b20f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003b2ad
push edx
push ecx
call fcn.10063628
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 0x1003b268
mov ecx, dword [ebp - 0x68]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003b25e
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003b2ad
push edx
push ecx
call fcn.10063628
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 0x1003b2bd
mov ecx, dword [ebp - 0xb0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003b2b3
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x1003b2b3
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.10063628
add esp, 8
mov ecx, dword [0x10097a00]
mov edx, 0x1009152c
cmp dword [0x10091540], 0x10
push 0x10098788
cmovae edx, dword [0x1009152c]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x1003c559
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x3fa8]
mov dword [ebp - 0x34], 0x59dd2995
mov dword [ebp - 0x30], 0x7e542d38
mov byte [ebp - 0x2c], 0xfd
push 0x10098788
test al, 1
jne 0x1003b36c
or eax, 1
mov dword [esi + 0x3fa8], 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 + 0x3d1d], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x34]
mov byte [esi + ecx + 0x3d14], al
add ecx, 1
adc edx, 0
jne 0x1003b358
cmp ecx, 9
jb 0x1003b340
push 0x10078e70
call fcn.100636df
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x3d14]
mov ecx, edi
call fcn.10057680
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 0x1003b397
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10060820
mov dword [ebp - 4], 0x35
mov eax, dword [esi + 0x13c]
mov dword [ebp - 0x18], 0x299436db
test al, 1
jne 0x1003b419
or eax, 1
mov dword [esi + 0x13c], 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 + 0x980], 1
nop dword [eax]
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x18]
mov byte [esi + ecx + 0x97c], al
add ecx, 1
adc edx, 0
jne 0x1003b408
cmp ecx, 4
jb 0x1003b3f0
push 0x10078ec0
call fcn.100636df
add esp, 4
mov byte [ebp - 4], 0x35
lea edi, [esi + 0x97c]
mov ecx, edi
call fcn.100576e0
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 0x1003b446
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0xb0]
call fcn.10060820
mov byte [ebp - 4], 0x37
mov eax, dword [esi + 0x104c]
mov dword [ebp - 0x20], 0x40d93cd2
mov dword [ebp - 0x1c], 0x7e4e6164
mov dword [ebp - 0x18], 0x4c963f8d
mov word [ebp - 0x14], 0x1776
test al, 1
jne 0x1003b4d9
or eax, 1
mov dword [esi + 0x104c], 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 + 0x1b72], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x20]
mov byte [esi + ecx + 0x1b64], al
add ecx, 1
adc edx, 0
jne 0x1003b4c8
cmp ecx, 0xe
jb 0x1003b4b0
push 0x10078f10
call fcn.100636df
add esp, 4
mov byte [ebp - 4], 0x37
lea edi, [esi + 0x1b64]
mov ecx, edi
call fcn.10057740
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 0x1003b500
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x68]
call fcn.10060820
push 0x10091514
lea edx, [ebp - 0x68]
mov byte [ebp - 4], 0x39
lea ecx, [ebp - 0x98]
call fcn.10060970
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.10061e00
sub esp, 0x18
mov byte [ebp - 4], 0x3b
mov ecx, esp
mov dword [ebp - 0x30], esp
lea edx, [ebp - 0x80]
push 0x10091574
call fcn.10060970
add esp, 4
mov byte [ebp - 4], 0x3c
mov eax, dword [esi + 0x37e8]
mov dword [ebp - 0x48], 0x45c83296
mov dword [ebp - 0x44], 0x211a752a
mov dword [ebp - 0x40], 0x4a872f98
mov word [ebp - 0x3c], 0x7a24
mov byte [ebp - 0x3a], 0x7b
test al, 1
jne 0x1003b5d9
or eax, 1
mov dword [esi + 0x37e8], 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 + 0x547], 1
nop
mov al, byte [ebp + ecx - 0x48]
mov byte [esi + ecx + 0x538], al
add ecx, 1
adc edx, 0
jne 0x1003b5c8
cmp ecx, 0xf
jb 0x1003b5b0
push 0x10078f60
call fcn.100636df
add esp, 4
mov byte [ebp - 4], 0x3c
lea edi, [esi + 0x538]
mov ecx, edi
call fcn.100577a0
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 0x1003b601
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10060820
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 0x1003b659
mov ecx, dword [ebp - 0x80]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003b64f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003b73d
push edx
push ecx
call fcn.10063628
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 0x1003b6a9
mov ecx, dword [ebp - 0x98]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003b69f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003b73d
push edx
push ecx
call fcn.10063628
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 0x1003b6f8
mov ecx, dword [ebp - 0x68]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003b6ee
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003b73d
push edx
push ecx
call fcn.10063628
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 0x1003b74d
mov ecx, dword [ebp - 0xb0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003b743
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x1003b743
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.10063628
add esp, 8
mov ecx, dword [0x10097a00]
mov edx, 0x1009152c
cmp dword [0x10091540], 0x10
push 0x10098788
cmovae edx, dword [0x1009152c]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x1003c559
mov ecx, 0x10098788
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1003b781
sub ecx, edx
cmp ecx, 0x20
jae 0x1003b798
cmp ecx, 1
ja 0x1003c559
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x2774]
mov dword [ebp - 0x28], 0xb0dc12f
mov dword [ebp - 0x24], 0x27f8780d
push 0x10098788
test al, 1
jne 0x1003b81c
or eax, 1
mov dword [esi + 0x2774], 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 + 0x24bc], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x28]
mov byte [esi + ecx + 0x24b4], al
add ecx, 1
adc edx, 0
jne 0x1003b808
cmp ecx, 8
jb 0x1003b7f0
push 0x10078d30
call fcn.100636df
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x24b4]
mov ecx, edi
call fcn.10057500
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 0x1003b847
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10060820
mov dword [ebp - 4], 0x43
mov eax, dword [esi + 0x18a0]
mov dword [ebp - 0x18], 0x7b44de61
test al, 1
jne 0x1003b8c9
or eax, 1
mov dword [esi + 0x18a0], 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 + 0x3298], 1
nop dword [eax]
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x18]
mov byte [esi + ecx + 0x3294], al
add ecx, 1
adc edx, 0
jne 0x1003b8b8
cmp ecx, 4
jb 0x1003b8a0
push 0x10078d80
call fcn.100636df
add esp, 4
mov byte [ebp - 4], 0x43
lea edi, [esi + 0x3294]
mov ecx, edi
call fcn.10057560
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 0x1003b8f6
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0xb0]
call fcn.10060820
mov byte [ebp - 4], 0x45
mov eax, dword [esi + 0x3a38]
mov dword [ebp - 0x20], 0x1209d468
mov dword [ebp - 0x1c], 0x8e22118
mov dword [ebp - 0x18], 0x1e46d737
mov word [ebp - 0x14], 0x570a
test al, 1
jne 0x1003b989
or eax, 1
mov dword [esi + 0x3a38], 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 + 0x896], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x20]
mov byte [ecx + esi + 0x888], al
add ecx, 1
adc edx, 0
jne 0x1003b978
cmp ecx, 0xe
jb 0x1003b960
push 0x10078dd0
call fcn.100636df
add esp, 4
mov byte [ebp - 4], 0x45
lea edi, [esi + 0x888]
mov ecx, edi
call fcn.100575c0
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 0x1003b9b0
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x68]
call fcn.10060820
push 0x10091154
lea edx, [ebp - 0x68]
mov byte [ebp - 4], 0x47
lea ecx, [ebp - 0x98]
call fcn.10060970
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.10061e00
sub esp, 0x18
mov byte [ebp - 4], 0x49
mov ecx, esp
mov dword [ebp - 0x30], esp
lea edx, [ebp - 0x80]
push 0x10091574
call fcn.10060970
add esp, 4
mov byte [ebp - 4], 0x4a
mov eax, dword [esi + 0x1cb0]
mov dword [ebp - 0x48], 0x1718da2c
mov dword [ebp - 0x44], 0x57b63556
mov dword [ebp - 0x40], 0x1857c722
mov word [ebp - 0x3c], 0x3a58
mov byte [ebp - 0x3a], 0xd7
test al, 1
jne 0x1003ba89
or eax, 1
mov dword [esi + 0x1cb0], 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 + 0x3e23], 1
nop
mov al, byte [ebp + ecx - 0x48]
mov byte [ecx + esi + 0x3e14], al
add ecx, 1
adc edx, 0
jne 0x1003ba78
cmp ecx, 0xf
jb 0x1003ba60
push 0x10078e20
call fcn.100636df
add esp, 4
mov byte [ebp - 4], 0x4a
lea edi, [esi + 0x3e14]
mov ecx, edi
call fcn.10057620
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 0x1003bab1
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10060820
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 0x1003bb09
mov ecx, dword [ebp - 0x80]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003baff
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003bbed
push edx
push ecx
call fcn.10063628
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 0x1003bb59
mov ecx, dword [ebp - 0x98]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003bb4f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003bbed
push edx
push ecx
call fcn.10063628
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 0x1003bba8
mov ecx, dword [ebp - 0x68]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003bb9e
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003bbed
push edx
push ecx
call fcn.10063628
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 0x1003bbfd
mov ecx, dword [ebp - 0xb0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003bbf3
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x1003bbf3
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.10063628
add esp, 8
mov ecx, dword [0x10097a00]
mov edx, 0x1009152c
cmp dword [0x10091540], 0x10
push 0x10098788
cmovae edx, dword [0x1009152c]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x1003c559
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x1120]
mov dword [ebp - 0x28], 0xf23abc7
mov dword [ebp - 0x24], 0xa3164287
push 0x10098788
test al, 1
jne 0x1003bcac
or eax, 1
mov dword [esi + 0x1120], 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 + 0x1e68], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x28]
mov byte [ecx + esi + 0x1e60], al
add ecx, 1
adc edx, 0
jne 0x1003bc98
cmp ecx, 8
jb 0x1003bc80
push 0x10078bf0
call fcn.100636df
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x1e60]
mov ecx, edi
call fcn.10057380
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 0x1003bcd7
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10060820
mov dword [ebp - 4], 0x51
mov eax, dword [esi + 0x143c]
mov dword [ebp - 0x18], 0x7f6ab489
test al, 1
jne 0x1003bd59
or eax, 1
mov dword [esi + 0x143c], 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 + 0x3f88], 1
nop dword [eax]
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x18]
mov byte [ecx + esi + 0x3f84], al
add ecx, 1
adc edx, 0
jne 0x1003bd48
cmp ecx, 4
jb 0x1003bd30
push 0x10078c40
call fcn.100636df
add esp, 4
mov byte [ebp - 4], 0x51
lea edi, [esi + 0x3f84]
mov ecx, edi
call fcn.100573e0
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 0x1003bd86
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0xb0]
call fcn.10060820
mov byte [ebp - 4], 0x53
mov eax, dword [esi + 0x4048]
mov dword [ebp - 0x20], 0x1627be80
mov dword [ebp - 0x1c], 0x8c0c1b92
mov dword [ebp - 0x18], 0x1a68bddf
mov word [ebp - 0x14], 0x6d80
test al, 1
jne 0x1003be19
or eax, 1
mov dword [esi + 0x4048], 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 + 0x7fa], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x20]
mov byte [ecx + esi + 0x7ec], al
add ecx, 1
adc edx, 0
jne 0x1003be08
cmp ecx, 0xe
jb 0x1003bdf0
push 0x10078c90
call fcn.100636df
add esp, 4
mov byte [ebp - 4], 0x53
lea edi, [esi + 0x7ec]
mov ecx, edi
call fcn.10057440
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 0x1003be40
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x68]
call fcn.10060820
push 0x10091344
lea edx, [ebp - 0x68]
mov byte [ebp - 4], 0x55
lea ecx, [ebp - 0x98]
call fcn.10060970
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.10061e00
sub esp, 0x18
mov byte [ebp - 4], 0x57
mov ecx, esp
mov dword [ebp - 0x30], esp
lea edx, [ebp - 0x80]
push 0x10091574
call fcn.10060970
add esp, 4
mov byte [ebp - 4], 0x58
mov eax, dword [esi + 0xd64]
mov dword [ebp - 0x48], 0x1336b0c4
mov dword [ebp - 0x44], 0xd3580fdc
mov dword [ebp - 0x40], 0x1c79adca
mov word [ebp - 0x3c], 0xd2
mov byte [ebp - 0x3a], 0x39
test al, 1
jne 0x1003bf19
or eax, 1
mov dword [esi + 0xd64], 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 + 0x2277], 1
nop
mov al, byte [ebp + ecx - 0x48]
mov byte [ecx + esi + 0x2268], al
add ecx, 1
adc edx, 0
jne 0x1003bf08
cmp ecx, 0xf
jb 0x1003bef0
push 0x10078ce0
call fcn.100636df
add esp, 4
mov byte [ebp - 4], 0x58
lea edi, [esi + 0x2268]
mov ecx, edi
call fcn.100574a0
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 0x1003bf41
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10060820
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 0x1003bf99
mov ecx, dword [ebp - 0x80]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003bf8f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003c07d
push edx
push ecx
call fcn.10063628
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 0x1003bfe9
mov ecx, dword [ebp - 0x98]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003bfdf
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003c07d
push edx
push ecx
call fcn.10063628
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 0x1003c038
mov ecx, dword [ebp - 0x68]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003c02e
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003c07d
push edx
push ecx
call fcn.10063628
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 0x1003c08d
mov ecx, dword [ebp - 0xb0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003c083
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x1003c083
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.10063628
add esp, 8
mov ecx, dword [0x10097a00]
mov edx, 0x1009152c
cmp dword [0x10091540], 0x10
push 0x10098788
cmovae edx, dword [0x1009152c]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x1003c559
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x2098]
mov dword [ebp - 0x28], 0xf54fe9af
mov dword [ebp - 0x24], 0x4d7052d3
push 0x10098788
test al, 1
jne 0x1003c13c
or eax, 1
mov dword [esi + 0x2098], 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 + 0x58c], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x28]
mov byte [esi + ecx + 0x584], al
add ecx, 1
adc edx, 0
jne 0x1003c128
cmp ecx, 8
jb 0x1003c110
push 0x10078ab0
call fcn.100636df
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x584]
mov ecx, edi
call fcn.10057200
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 0x1003c167
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10060820
mov dword [ebp - 4], 0x5f
mov eax, dword [esi + 0x1df0]
mov dword [ebp - 0x18], 0x8506f6e1
test al, 1
jne 0x1003c1e9
or eax, 1
mov dword [esi + 0x1df0], 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 + 0x3c98], 1
nop dword [eax]
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x18]
mov byte [esi + ecx + 0x3c94], al
add ecx, 1
adc edx, 0
jne 0x1003c1d8
cmp ecx, 4
jb 0x1003c1c0
push 0x10078b00
call fcn.100636df
add esp, 4
mov byte [ebp - 4], 0x5f
lea edi, [esi + 0x3c94]
mov ecx, edi
call fcn.10057260
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 0x1003c210
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x80]
call fcn.10060820
mov byte [ebp - 4], 0x61
mov eax, dword [esi + 0x1b4c]
mov dword [ebp - 0x20], 0xec4bfce8
mov dword [ebp - 0x1c], 0x626a0bc6
mov dword [ebp - 0x18], 0xe004ffb7
mov word [ebp - 0x14], 0x7dd4
test al, 1
jne 0x1003c299
or eax, 1
mov dword [esi + 0x1b4c], 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 + 0x3c0a], 1
nop
mov al, byte [ebp + ecx - 0x20]
mov byte [esi + ecx + 0x3bfc], al
add ecx, 1
adc edx, 0
jne 0x1003c288
cmp ecx, 0xe
jb 0x1003c270
push 0x10078b50
call fcn.100636df
add esp, 4
mov byte [ebp - 4], 0x61
lea edi, [esi + 0x3bfc]
mov ecx, edi
call fcn.100572c0
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 0x1003c2c6
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0xb0]
call fcn.10060820
push 0x10091514
lea edx, [ebp - 0xb0]
mov byte [ebp - 4], 0x63
lea ecx, [ebp - 0xe0]
call fcn.10060970
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.10061e00
sub esp, 0x18
mov byte [ebp - 4], 0x65
mov ecx, esp
mov dword [ebp - 0x30], esp
lea edx, [ebp - 0xc8]
push 0x10091574
call fcn.10060970
add esp, 4
mov byte [ebp - 4], 0x66
mov eax, dword [esi + 0x3dc]
mov dword [ebp - 0x48], 0xe95af2ac
mov dword [ebp - 0x44], 0x3d3e1f88
mov dword [ebp - 0x40], 0xe615efa2
mov word [ebp - 0x3c], 0x1086
mov byte [ebp - 0x3a], 0x5f
test al, 1
jne 0x1003c3a9
or eax, 1
mov dword [esi + 0x3dc], 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 + 0xce3], 1
nop
mov al, byte [ebp + ecx - 0x48]
mov byte [esi + ecx + 0xcd4], al
add ecx, 1
adc edx, 0
jne 0x1003c398
cmp ecx, 0xf
jb 0x1003c380
push 0x10078ba0
call fcn.100636df
add esp, 4
mov byte [ebp - 4], 0x66
lea esi, [esi + 0xcd4]
mov ecx, esi
call fcn.10057320
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 0x1003c3d1
sub ecx, edi
push ecx
push esi
mov ecx, edx
call fcn.10060820
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 0x1003c42f
mov ecx, dword [ebp - 0xc8]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003c425
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003c525
push edx
push ecx
call fcn.10063628
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 0x1003c488
mov ecx, dword [ebp - 0xe0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003c47e
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003c525
push edx
push ecx
call fcn.10063628
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 0x1003c4dd
mov ecx, dword [ebp - 0xb0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003c4d3
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003c525
push edx
push ecx
call fcn.10063628
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 0x1003c535
mov ecx, dword [ebp - 0x80]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003c52b
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x1003c52b
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.10063628
add esp, 8
mov ecx, dword [0x10097a00]
mov edx, 0x1009152c
cmp dword [0x10091540], 0x10
push 0x10098788
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.10062dd9
mov esp, ebp
pop ebp
ret