Function at 0x10035be0
Capabilities:
Parse pe header

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x10063a6b
mov eax, dword fs:[0]
push eax
sub esp, 0xd4
mov eax, dword [0x1008500c]
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 [0x10085f0c]
push 0x1008c768
push 0
push 0
mov esi, dword [eax + ecx*4]
mov dword [ebp - 0x18], 0x93b42e27
mov eax, dword [esi + 0x15f0]
test al, 1
jne 0x10035c8c
or eax, 1
mov dword [esi + 0x15f0], 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 + 0x804], 1
nop dword [eax]
mov al, byte [ebp + ecx - 0x18]
mov byte [esi + ecx + 0x800], al
add ecx, 1
adc edx, 0
jne 0x10035c78
cmp ecx, 4
jb 0x10035c60
push 0x10070630
call fcn.1005cb27
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x800]
mov ecx, edi
call fcn.100525c0
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 0x10035cb0
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x80]
call fcn.10059ba0
mov dword [ebp - 4], 1
mov eax, dword [esi + 0x17a0]
mov dword [ebp - 0x38], 0xfaf9242e
mov dword [ebp - 0x34], 0xa234c758
mov dword [ebp - 0x30], 0xf6b62771
mov word [ebp - 0x2c], 0xb14a
test al, 1
jne 0x10035d3a
or eax, 1
mov dword [esi + 0x17a0], 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 + 0x2b06], 1
mov al, byte [ebp + ecx - 0x38]
mov byte [esi + ecx + 0x2af8], al
add ecx, 1
adc edx, 0
jne 0x10035d29
cmp ecx, 0xe
jb 0x10035d11
push 0x10070680
call fcn.1005cb27
add esp, 4
mov byte [ebp - 4], 1
lea edi, [esi + 0x2af8]
mov ecx, edi
call fcn.10052620
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 0x10035d60
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x50]
call fcn.10059ba0
push 0x10085150
lea edx, [ebp - 0x50]
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x98]
call fcn.10059d40
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.1005b170
sub esp, 0x18
mov byte [ebp - 4], 5
mov ecx, esp
mov dword [ebp - 0x18], esp
lea edx, [ebp - 0x68]
push 0x10085570
call fcn.10059d40
add esp, 4
mov byte [ebp - 4], 6
mov eax, dword [esi + 0x3e0]
mov dword [ebp - 0x38], 0xffe82a6a
mov dword [ebp - 0x34], 0xfd60d316
mov dword [ebp - 0x30], 0xf0a73764
mov word [ebp - 0x2c], 0xdc18
mov byte [ebp - 0x2a], 1
test al, 1
jne 0x10035e39
or eax, 1
mov dword [esi + 0x3e0], 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 + 0x2183], 1
nop dword [eax]
mov al, byte [ebp + ecx - 0x38]
mov byte [esi + ecx + 0x2174], al
add ecx, 1
adc edx, 0
jne 0x10035e28
cmp ecx, 0xf
jb 0x10035e10
push 0x100706d0
call fcn.1005cb27
add esp, 4
mov byte [ebp - 4], 6
lea edi, [esi + 0x2174]
mov ecx, edi
call fcn.10052680
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 0x10035e61
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10059ba0
mov ecx, dword [0x100877fc]
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 0x10035eba
mov ecx, dword [ebp - 0x68]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10035eb0
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10035f98
push edx
push ecx
call fcn.1005ca70
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 0x10035f0a
mov ecx, dword [ebp - 0x98]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10035f00
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10035f98
push edx
push ecx
call fcn.1005ca70
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 0x10035f59
mov ecx, dword [ebp - 0x50]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10035f4f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10035f98
push edx
push ecx
call fcn.1005ca70
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 0x10035fa8
mov ecx, dword [ebp - 0x80]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10035f9e
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x10035f9e
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.1005ca70
add esp, 8
mov ecx, dword [0x1008b9e4]
mov edx, 0x10085528
cmp dword [0x1008553c], 0x10
push 0x1008c768
cmovae edx, dword [0x10085528]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x100382f9
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x3644]
mov dword [ebp - 0x18], 0xe914902b
push 0x1008c768
push 0
push 0
test al, 1
jne 0x1003604c
or eax, 1
mov dword [esi + 0x3644], 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 + 0x1008], 1
nop
mov al, byte [ebp + ecx - 0x18]
mov byte [esi + ecx + 0x1004], al
add ecx, 1
adc edx, 0
jne 0x10036038
cmp ecx, 4
jb 0x10036020
push 0x10070540
call fcn.1005cb27
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x1004]
mov ecx, edi
call fcn.100524a0
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 0x10036070
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x68]
call fcn.10059ba0
mov dword [ebp - 4], 9
mov eax, dword [esi + 0x1060]
mov dword [ebp - 0x38], 0x80599a22
mov dword [ebp - 0x34], 0x841cbf76
mov dword [ebp - 0x30], 0x8c16997d
mov word [ebp - 0x2c], 0xc964
test al, 1
jne 0x100360fa
or eax, 1
mov dword [esi + 0x1060], 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 + 0x2e12], 1
mov al, byte [ebp + ecx - 0x38]
mov byte [ecx + esi + 0x2e04], al
add ecx, 1
adc edx, 0
jne 0x100360e9
cmp ecx, 0xe
jb 0x100360d1
push 0x10070590
call fcn.1005cb27
add esp, 4
mov byte [ebp - 4], 9
lea edi, [esi + 0x2e04]
mov ecx, edi
call fcn.10052500
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 0x10036120
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x50]
call fcn.10059ba0
push 0x10085340
lea edx, [ebp - 0x50]
mov byte [ebp - 4], 0xb
lea ecx, [ebp - 0x98]
call fcn.10059d40
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.1005b170
sub esp, 0x18
mov byte [ebp - 4], 0xd
mov ecx, esp
mov dword [ebp - 0x30], esp
lea edx, [ebp - 0x80]
push 0x10085570
call fcn.10059d40
add esp, 4
mov byte [ebp - 4], 0xe
mov eax, dword [esi + 0x1ad0]
mov dword [ebp - 0x20], 0x85489466
mov dword [ebp - 0x1c], 0xdb48ab38
mov dword [ebp - 0x18], 0x8a078968
mov word [ebp - 0x14], 0xa436
mov byte [ebp - 0x12], 0x29
test al, 1
jne 0x100361f9
or eax, 1
mov dword [esi + 0x1ad0], 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 + 0x28a7], 1
nop dword [eax]
mov al, byte [ebp + ecx - 0x20]
mov byte [ecx + esi + 0x2898], al
add ecx, 1
adc edx, 0
jne 0x100361e8
cmp ecx, 0xf
jb 0x100361d0
push 0x100705e0
call fcn.1005cb27
add esp, 4
mov byte [ebp - 4], 0xe
lea edi, [esi + 0x2898]
mov ecx, edi
call fcn.10052560
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 0x10036221
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10059ba0
mov ecx, dword [0x100877fc]
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 0x1003627a
mov ecx, dword [ebp - 0x80]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10036270
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10036358
push edx
push ecx
call fcn.1005ca70
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 0x100362ca
mov ecx, dword [ebp - 0x98]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100362c0
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10036358
push edx
push ecx
call fcn.1005ca70
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 0x10036319
mov ecx, dword [ebp - 0x50]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003630f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10036358
push edx
push ecx
call fcn.1005ca70
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 0x10036368
mov ecx, dword [ebp - 0x68]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003635e
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x1003635e
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.1005ca70
add esp, 8
mov ecx, dword [0x1008b9e4]
mov edx, 0x10085528
cmp dword [0x1008553c], 0x10
push 0x1008c768
cmovae edx, dword [0x10085528]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x100382f9
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x2328]
mov dword [ebp - 0x18], 0xbda634d5
push 0x1008c768
push 0
push 0
test al, 1
jne 0x1003640c
or eax, 1
mov dword [esi + 0x2328], 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 + 0x3120], 1
nop
mov al, byte [ebp + ecx - 0x18]
mov byte [ecx + esi + 0x311c], al
add ecx, 1
adc edx, 0
jne 0x100363f8
cmp ecx, 4
jb 0x100363e0
push 0x10070450
call fcn.1005cb27
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x311c]
mov ecx, edi
call fcn.10052380
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 0x10036430
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x68]
call fcn.10059ba0
mov dword [ebp - 4], 0x11
mov eax, dword [esi + 0x24b8]
mov dword [ebp - 0x38], 0xd4eb3edc
mov dword [ebp - 0x34], 0xfa584b98
mov dword [ebp - 0x30], 0xd8a43d83
mov word [ebp - 0x2c], 0x3d8a
test al, 1
jne 0x100364ba
or eax, 1
mov dword [esi + 0x24b8], 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 + 0x213a], 1
mov al, byte [ebp + ecx - 0x38]
mov byte [ecx + esi + 0x212c], al
add ecx, 1
adc edx, 0
jne 0x100364a9
cmp ecx, 0xe
jb 0x10036491
push 0x100704a0
call fcn.1005cb27
add esp, 4
mov byte [ebp - 4], 0x11
lea edi, [esi + 0x212c]
mov ecx, edi
call fcn.100523e0
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 0x100364e0
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x50]
call fcn.10059ba0
push 0x10085510
lea edx, [ebp - 0x50]
mov byte [ebp - 4], 0x13
lea ecx, [ebp - 0x98]
call fcn.10059d40
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.1005b170
sub esp, 0x18
mov byte [ebp - 4], 0x15
mov ecx, esp
mov dword [ebp - 0x30], esp
lea edx, [ebp - 0x80]
push 0x10085570
call fcn.10059d40
add esp, 4
mov byte [ebp - 4], 0x16
mov eax, dword [esi + 0x215c]
mov dword [ebp - 0x20], 0xd1fa3098
mov dword [ebp - 0x1c], 0xa50c5fd6
mov dword [ebp - 0x18], 0xdeb52d96
mov word [ebp - 0x14], 0x50d8
mov byte [ebp - 0x12], 0x6d
test al, 1
jne 0x100365b9
or eax, 1
mov dword [esi + 0x215c], 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 + 0x2023], 1
nop dword [eax]
mov al, byte [ebp + ecx - 0x20]
mov byte [ecx + esi + 0x2014], al
add ecx, 1
adc edx, 0
jne 0x100365a8
cmp ecx, 0xf
jb 0x10036590
push 0x100704f0
call fcn.1005cb27
add esp, 4
mov byte [ebp - 4], 0x16
lea edi, [esi + 0x2014]
mov ecx, edi
call fcn.10052440
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 0x100365e1
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10059ba0
mov ecx, dword [0x100877fc]
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 0x1003663a
mov ecx, dword [ebp - 0x80]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10036630
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10036718
push edx
push ecx
call fcn.1005ca70
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 0x1003668a
mov ecx, dword [ebp - 0x98]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10036680
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10036718
push edx
push ecx
call fcn.1005ca70
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 0x100366d9
mov ecx, dword [ebp - 0x50]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100366cf
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10036718
push edx
push ecx
call fcn.1005ca70
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 0x10036728
mov ecx, dword [ebp - 0x68]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003671e
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x1003671e
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.1005ca70
add esp, 8
mov ecx, dword [0x1008b9e4]
mov edx, 0x10085528
cmp dword [0x1008553c], 0x10
push 0x1008c768
cmovae edx, dword [0x10085528]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x100382f9
mov ecx, 0x1008c768
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10036760
sub ecx, edx
cmp ecx, 0x20
jb 0x100382f9
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x2e20]
mov dword [ebp - 0x34], 0x257739bd
mov dword [ebp - 0x30], 0x8a96d1b4
mov byte [ebp - 0x2c], 0xd5
push 0x1008c768
test al, 1
jne 0x100367fc
or eax, 1
mov dword [esi + 0x2e20], 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 + 0xd11], 1
nop dword [eax]
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x34]
mov byte [ecx + esi + 0xd08], al
add ecx, 1
adc edx, 0
jne 0x100367e8
cmp ecx, 9
jb 0x100367d0
push 0x10070310
call fcn.1005cb27
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0xd08]
mov ecx, edi
call fcn.10052200
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 0x10036827
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10059ba0
mov dword [ebp - 4], 0x19
mov eax, dword [esi + 0x1aa8]
mov dword [ebp - 0x18], 0x553e26f3
test al, 1
jne 0x100368a9
or eax, 1
mov dword [esi + 0x1aa8], 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 + 0x17b4], 1
nop dword [eax]
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x18]
mov byte [ecx + esi + 0x17b0], al
add ecx, 1
adc edx, 0
jne 0x10036898
cmp ecx, 4
jb 0x10036880
push 0x10070360
call fcn.1005cb27
add esp, 4
mov byte [ebp - 4], 0x19
lea edi, [esi + 0x17b0]
mov ecx, edi
call fcn.10052260
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 0x100368d6
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0xb0]
call fcn.10059ba0
mov byte [ebp - 4], 0x1b
mov eax, dword [esi + 0x3f8]
mov dword [ebp - 0x20], 0x3c732cfa
mov dword [ebp - 0x1c], 0x8a8c9de8
mov dword [ebp - 0x18], 0x303c2fa5
mov word [ebp - 0x14], 0xebfa
test al, 1
jne 0x10036969
or eax, 1
mov dword [esi + 0x3f8], 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 + 0x1f2e], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x20]
mov byte [ecx + esi + 0x1f20], al
add ecx, 1
adc edx, 0
jne 0x10036958
cmp ecx, 0xe
jb 0x10036940
push 0x100703b0
call fcn.1005cb27
add esp, 4
mov byte [ebp - 4], 0x1b
lea edi, [esi + 0x1f20]
mov ecx, edi
call fcn.100522c0
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 0x10036990
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x68]
call fcn.10059ba0
push 0x10085150
lea edx, [ebp - 0x68]
mov byte [ebp - 4], 0x1d
lea ecx, [ebp - 0x98]
call fcn.10059d40
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.1005b170
sub esp, 0x18
mov byte [ebp - 4], 0x1f
mov ecx, esp
mov dword [ebp - 0x18], esp
lea edx, [ebp - 0x80]
push 0x10085570
call fcn.10059d40
add esp, 4
mov byte [ebp - 4], 0x20
mov eax, dword [esi + 0x16f4]
mov dword [ebp - 0x48], 0x396222be
mov dword [ebp - 0x44], 0xd5d889a6
mov dword [ebp - 0x40], 0x362d3fb0
mov word [ebp - 0x3c], 0x86a8
mov byte [ebp - 0x3a], 0xb9
test al, 1
jne 0x10036a69
or eax, 1
mov dword [esi + 0x16f4], 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 + 0x37a3], 1
nop
mov al, byte [ebp + ecx - 0x48]
mov byte [ecx + esi + 0x3794], al
add ecx, 1
adc edx, 0
jne 0x10036a58
cmp ecx, 0xf
jb 0x10036a40
push 0x10070400
call fcn.1005cb27
add esp, 4
mov byte [ebp - 4], 0x20
lea edi, [esi + 0x3794]
mov ecx, edi
call fcn.10052320
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 0x10036a91
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10059ba0
mov ecx, dword [0x100877fc]
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 0x10036ae9
mov ecx, dword [ebp - 0x80]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10036adf
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10036bcd
push edx
push ecx
call fcn.1005ca70
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 0x10036b39
mov ecx, dword [ebp - 0x98]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10036b2f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10036bcd
push edx
push ecx
call fcn.1005ca70
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 0x10036b88
mov ecx, dword [ebp - 0x68]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10036b7e
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10036bcd
push edx
push ecx
call fcn.1005ca70
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 0x10036bdd
mov ecx, dword [ebp - 0xb0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10036bd3
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x10036bd3
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.1005ca70
add esp, 8
mov ecx, dword [0x1008b9e4]
mov edx, 0x10085528
cmp dword [0x1008553c], 0x10
push 0x1008c768
cmovae edx, dword [0x10085528]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x100382f9
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x2684]
mov dword [ebp - 0x34], 0xc3555d33
mov dword [ebp - 0x30], 0xae1449ac
mov byte [ebp - 0x2c], 0x5b
push 0x1008c768
test al, 1
jne 0x10036c8c
or eax, 1
mov dword [esi + 0x2684], 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 + 0x360d], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x34]
mov byte [esi + ecx + 0x3604], al
add ecx, 1
adc edx, 0
jne 0x10036c78
cmp ecx, 9
jb 0x10036c60
push 0x100701d0
call fcn.1005cb27
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x3604]
mov ecx, edi
call fcn.10052080
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 0x10036cb7
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10059ba0
mov dword [ebp - 4], 0x27
mov eax, dword [esi + 0x2ed0]
mov dword [ebp - 0x18], 0xb31c427d
test al, 1
jne 0x10036d39
or eax, 1
mov dword [esi + 0x2ed0], 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 + 0x8ec], 1
nop dword [eax]
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x18]
mov byte [esi + ecx + 0x8e8], al
add ecx, 1
adc edx, 0
jne 0x10036d28
cmp ecx, 4
jb 0x10036d10
push 0x10070220
call fcn.1005cb27
add esp, 4
mov byte [ebp - 4], 0x27
lea edi, [esi + 0x8e8]
mov ecx, edi
call fcn.100520e0
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 0x10036d66
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0xb0]
call fcn.10059ba0
mov byte [ebp - 4], 0x29
mov eax, dword [esi + 0x2c88]
mov dword [ebp - 0x20], 0xda514874
mov dword [ebp - 0x1c], 0xae0e05f0
mov dword [ebp - 0x18], 0xd61e4b2b
mov word [ebp - 0x14], 0x73e2
test al, 1
jne 0x10036df9
or eax, 1
mov dword [esi + 0x2c88], 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 + 0x2b16], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x20]
mov byte [esi + ecx + 0x2b08], al
add ecx, 1
adc edx, 0
jne 0x10036de8
cmp ecx, 0xe
jb 0x10036dd0
push 0x10070270
call fcn.1005cb27
add esp, 4
mov byte [ebp - 4], 0x29
lea edi, [esi + 0x2b08]
mov ecx, edi
call fcn.10052140
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 0x10036e20
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x68]
call fcn.10059ba0
push 0x10085340
lea edx, [ebp - 0x68]
mov byte [ebp - 4], 0x2b
lea ecx, [ebp - 0x98]
call fcn.10059d40
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.1005b170
sub esp, 0x18
mov byte [ebp - 4], 0x2d
mov ecx, esp
mov dword [ebp - 0x30], esp
lea edx, [ebp - 0x80]
push 0x10085570
call fcn.10059d40
add esp, 4
mov byte [ebp - 4], 0x2e
mov eax, dword [esi + 0x32ec]
mov dword [ebp - 0x48], 0xdf404630
mov dword [ebp - 0x44], 0xf15a11be
mov dword [ebp - 0x40], 0xd00f5b3e
mov word [ebp - 0x3c], 0x1eb0
mov byte [ebp - 0x3a], 0x3b
test al, 1
jne 0x10036ef9
or eax, 1
mov dword [esi + 0x32ec], 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 + 0xf87], 1
nop
mov al, byte [ebp + ecx - 0x48]
mov byte [esi + ecx + 0xf78], al
add ecx, 1
adc edx, 0
jne 0x10036ee8
cmp ecx, 0xf
jb 0x10036ed0
push 0x100702c0
call fcn.1005cb27
add esp, 4
mov byte [ebp - 4], 0x2e
lea edi, [esi + 0xf78]
mov ecx, edi
call fcn.100521a0
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 0x10036f21
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10059ba0
mov ecx, dword [0x100877fc]
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 0x10036f79
mov ecx, dword [ebp - 0x80]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10036f6f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003705d
push edx
push ecx
call fcn.1005ca70
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 0x10036fc9
mov ecx, dword [ebp - 0x98]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10036fbf
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003705d
push edx
push ecx
call fcn.1005ca70
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 0x10037018
mov ecx, dword [ebp - 0x68]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003700e
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003705d
push edx
push ecx
call fcn.1005ca70
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 0x1003706d
mov ecx, dword [ebp - 0xb0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10037063
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x10037063
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.1005ca70
add esp, 8
mov ecx, dword [0x1008b9e4]
mov edx, 0x10085528
cmp dword [0x1008553c], 0x10
push 0x1008c768
cmovae edx, dword [0x10085528]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x100382f9
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x10a4]
mov dword [ebp - 0x34], 0xf73d2b45
mov dword [ebp - 0x30], 0xf83c1770
mov byte [ebp - 0x2c], 0x2d
push 0x1008c768
test al, 1
jne 0x1003711c
or eax, 1
mov dword [esi + 0x10a4], 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 + 0x1845], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x34]
mov byte [esi + ecx + 0x183c], al
add ecx, 1
adc edx, 0
jne 0x10037108
cmp ecx, 9
jb 0x100370f0
push 0x10070090
call fcn.1005cb27
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x183c]
mov ecx, edi
call fcn.10051f00
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 0x10037147
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10059ba0
mov dword [ebp - 4], 0x35
mov eax, dword [esi + 0x2118]
mov dword [ebp - 0x18], 0x8774340b
test al, 1
jne 0x100371c9
or eax, 1
mov dword [esi + 0x2118], 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 + 0x1a60], 1
nop dword [eax]
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x18]
mov byte [esi + ecx + 0x1a5c], al
add ecx, 1
adc edx, 0
jne 0x100371b8
cmp ecx, 4
jb 0x100371a0
push 0x100700e0
call fcn.1005cb27
add esp, 4
mov byte [ebp - 4], 0x35
lea edi, [esi + 0x1a5c]
mov ecx, edi
call fcn.10051f60
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 0x100371f6
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0xb0]
call fcn.10059ba0
mov byte [ebp - 4], 0x37
mov eax, dword [esi + 0xc24]
mov dword [ebp - 0x20], 0xee393e02
mov dword [ebp - 0x1c], 0xf8265b2c
mov dword [ebp - 0x18], 0xe2763d5d
mov word [ebp - 0x14], 0x2d3e
test al, 1
jne 0x10037289
or eax, 1
mov dword [esi + 0xc24], 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 + 0xf1a], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x20]
mov byte [esi + ecx + 0xf0c], al
add ecx, 1
adc edx, 0
jne 0x10037278
cmp ecx, 0xe
jb 0x10037260
push 0x10070130
call fcn.1005cb27
add esp, 4
mov byte [ebp - 4], 0x37
lea edi, [esi + 0xf0c]
mov ecx, edi
call fcn.10051fc0
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 0x100372b0
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x68]
call fcn.10059ba0
push 0x10085510
lea edx, [ebp - 0x68]
mov byte [ebp - 4], 0x39
lea ecx, [ebp - 0x98]
call fcn.10059d40
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.1005b170
sub esp, 0x18
mov byte [ebp - 4], 0x3b
mov ecx, esp
mov dword [ebp - 0x30], esp
lea edx, [ebp - 0x80]
push 0x10085570
call fcn.10059d40
add esp, 4
mov byte [ebp - 4], 0x3c
mov eax, dword [esi + 0x1f98]
mov dword [ebp - 0x48], 0xeb283046
mov dword [ebp - 0x44], 0xa7724f62
mov dword [ebp - 0x40], 0xe4672d48
mov word [ebp - 0x3c], 0x406c
mov byte [ebp - 0x3a], 0x13
test al, 1
jne 0x10037389
or eax, 1
mov dword [esi + 0x1f98], 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 + 0x10cf], 1
nop
mov al, byte [ebp + ecx - 0x48]
mov byte [esi + ecx + 0x10c0], al
add ecx, 1
adc edx, 0
jne 0x10037378
cmp ecx, 0xf
jb 0x10037360
push 0x10070180
call fcn.1005cb27
add esp, 4
mov byte [ebp - 4], 0x3c
lea edi, [esi + 0x10c0]
mov ecx, edi
call fcn.10052020
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 0x100373b1
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10059ba0
mov ecx, dword [0x100877fc]
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 0x10037409
mov ecx, dword [ebp - 0x80]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100373ff
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100374ed
push edx
push ecx
call fcn.1005ca70
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 0x10037459
mov ecx, dword [ebp - 0x98]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003744f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100374ed
push edx
push ecx
call fcn.1005ca70
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 0x100374a8
mov ecx, dword [ebp - 0x68]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003749e
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100374ed
push edx
push ecx
call fcn.1005ca70
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 0x100374fd
mov ecx, dword [ebp - 0xb0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100374f3
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x100374f3
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.1005ca70
add esp, 8
mov ecx, dword [0x1008b9e4]
mov edx, 0x10085528
cmp dword [0x1008553c], 0x10
push 0x1008c768
cmovae edx, dword [0x10085528]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x100382f9
mov ecx, 0x1008c768
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10037531
sub ecx, edx
cmp ecx, 0x20
jb 0x100382f9
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x18f0]
mov dword [ebp - 0x28], 0xd13b9fbb
mov dword [ebp - 0x24], 0xaf72dcbf
push 0x1008c768
test al, 1
jne 0x100375bc
or eax, 1
mov dword [esi + 0x18f0], 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 + 0x36f8], 1
mov al, byte [ebp + ecx - 0x28]
mov byte [esi + ecx + 0x36f0], al
add ecx, 1
adc edx, 0
jne 0x100375a8
cmp ecx, 8
jb 0x10037590
push 0x1006ff50
call fcn.1005cb27
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x36f0]
mov ecx, edi
call fcn.10051d80
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 0x100375e7
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10059ba0
mov dword [ebp - 4], 0x43
mov eax, dword [esi + 0xf88]
mov dword [ebp - 0x18], 0xa17280f5
test al, 1
jne 0x10037669
or eax, 1
mov dword [esi + 0xf88], 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 + 0x15b0], 1
nop dword [eax]
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x18]
mov byte [esi + ecx + 0x15ac], al
add ecx, 1
adc edx, 0
jne 0x10037658
cmp ecx, 4
jb 0x10037640
push 0x1006ffa0
call fcn.1005cb27
add esp, 4
mov byte [ebp - 4], 0x43
lea edi, [esi + 0x15ac]
mov ecx, edi
call fcn.10051de0
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 0x10037696
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0xb0]
call fcn.10059ba0
mov byte [ebp - 4], 0x45
mov eax, dword [esi + 0x30d4]
mov dword [ebp - 0x20], 0xc83f8afc
mov dword [ebp - 0x1c], 0x806885aa
mov dword [ebp - 0x18], 0xc47089a3
mov word [ebp - 0x14], 0xf3b8
test al, 1
jne 0x10037729
or eax, 1
mov dword [esi + 0x30d4], 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 + 0x2032], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x20]
mov byte [ecx + esi + 0x2024], al
add ecx, 1
adc edx, 0
jne 0x10037718
cmp ecx, 0xe
jb 0x10037700
push 0x1006fff0
call fcn.1005cb27
add esp, 4
mov byte [ebp - 4], 0x45
lea edi, [esi + 0x2024]
mov ecx, edi
call fcn.10051e40
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 0x10037750
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x68]
call fcn.10059ba0
push 0x10085150
lea edx, [ebp - 0x68]
mov byte [ebp - 4], 0x47
lea ecx, [ebp - 0x98]
call fcn.10059d40
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.1005b170
sub esp, 0x18
mov byte [ebp - 4], 0x49
mov ecx, esp
mov dword [ebp - 0x30], esp
lea edx, [ebp - 0x80]
push 0x10085570
call fcn.10059d40
add esp, 4
mov byte [ebp - 4], 0x4a
mov eax, dword [esi + 0xa9c]
mov dword [ebp - 0x48], 0xcd2e84b8
mov dword [ebp - 0x44], 0xdf3c91e4
mov dword [ebp - 0x40], 0xc26199b6
mov word [ebp - 0x3c], 0x9eea
mov byte [ebp - 0x3a], 0x5d
test al, 1
jne 0x10037829
or eax, 1
mov dword [esi + 0xa9c], 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 + 0x1373], 1
nop
mov al, byte [ebp + ecx - 0x48]
mov byte [ecx + esi + 0x1364], al
add ecx, 1
adc edx, 0
jne 0x10037818
cmp ecx, 0xf
jb 0x10037800
push 0x10070040
call fcn.1005cb27
add esp, 4
mov byte [ebp - 4], 0x4a
lea edi, [esi + 0x1364]
mov ecx, edi
call fcn.10051ea0
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 0x10037851
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10059ba0
mov ecx, dword [0x100877fc]
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 0x100378a9
mov ecx, dword [ebp - 0x80]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003789f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003798d
push edx
push ecx
call fcn.1005ca70
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 0x100378f9
mov ecx, dword [ebp - 0x98]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100378ef
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003798d
push edx
push ecx
call fcn.1005ca70
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 0x10037948
mov ecx, dword [ebp - 0x68]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003793e
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003798d
push edx
push ecx
call fcn.1005ca70
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 0x1003799d
mov ecx, dword [ebp - 0xb0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10037993
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x10037993
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.1005ca70
add esp, 8
mov ecx, dword [0x1008b9e4]
mov edx, 0x10085528
cmp dword [0x1008553c], 0x10
push 0x1008c768
cmovae edx, dword [0x10085528]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x100382f9
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x204]
mov dword [ebp - 0x28], 0x57cfafe5
mov dword [ebp - 0x24], 0x37f0cad5
push 0x1008c768
test al, 1
jne 0x10037a4c
or eax, 1
mov dword [esi + 0x204], 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 + 0xc44], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x28]
mov byte [ecx + esi + 0xc3c], al
add ecx, 1
adc edx, 0
jne 0x10037a38
cmp ecx, 8
jb 0x10037a20
push 0x1006fe10
call fcn.1005cb27
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0xc3c]
mov ecx, edi
call fcn.10051c00
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 0x10037a77
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10059ba0
mov dword [ebp - 4], 0x51
mov eax, dword [esi + 0x37b0]
mov dword [ebp - 0x18], 0x2786b0ab
test al, 1
jne 0x10037af9
or eax, 1
mov dword [esi + 0x37b0], 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 + 0x234c], 1
nop dword [eax]
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x18]
mov byte [ecx + esi + 0x2348], al
add ecx, 1
adc edx, 0
jne 0x10037ae8
cmp ecx, 4
jb 0x10037ad0
push 0x1006fe60
call fcn.1005cb27
add esp, 4
mov byte [ebp - 4], 0x51
lea edi, [esi + 0x2348]
mov ecx, edi
call fcn.10051c60
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 0x10037b26
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0xb0]
call fcn.10059ba0
mov byte [ebp - 4], 0x53
mov eax, dword [esi + 0x1f68]
mov dword [ebp - 0x20], 0x4ecbbaa2
mov dword [ebp - 0x1c], 0x18ea93c0
mov dword [ebp - 0x18], 0x4284b9fd
mov word [ebp - 0x14], 0xe5d2
test al, 1
jne 0x10037bb9
or eax, 1
mov dword [esi + 0x1f68], 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 + 0x1cde], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x20]
mov byte [ecx + esi + 0x1cd0], al
add ecx, 1
adc edx, 0
jne 0x10037ba8
cmp ecx, 0xe
jb 0x10037b90
push 0x1006feb0
call fcn.1005cb27
add esp, 4
mov byte [ebp - 4], 0x53
lea edi, [esi + 0x1cd0]
mov ecx, edi
call fcn.10051cc0
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 0x10037be0
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x68]
call fcn.10059ba0
push 0x10085340
lea edx, [ebp - 0x68]
mov byte [ebp - 4], 0x55
lea ecx, [ebp - 0x98]
call fcn.10059d40
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.1005b170
sub esp, 0x18
mov byte [ebp - 4], 0x57
mov ecx, esp
mov dword [ebp - 0x30], esp
lea edx, [ebp - 0x80]
push 0x10085570
call fcn.10059d40
add esp, 4
mov byte [ebp - 4], 0x58
mov eax, dword [esi + 0x8a8]
mov dword [ebp - 0x48], 0x4bdab4e6
mov dword [ebp - 0x44], 0x47be878e
mov dword [ebp - 0x40], 0x4495a9e8
mov word [ebp - 0x3c], 0x8880
mov byte [ebp - 0x3a], 0xdf
test al, 1
jne 0x10037cb9
or eax, 1
mov dword [esi + 0x8a8], 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 + 0x2b2b], 1
nop
mov al, byte [ebp + ecx - 0x48]
mov byte [ecx + esi + 0x2b1c], al
add ecx, 1
adc edx, 0
jne 0x10037ca8
cmp ecx, 0xf
jb 0x10037c90
push 0x1006ff00
call fcn.1005cb27
add esp, 4
mov byte [ebp - 4], 0x58
lea edi, [esi + 0x2b1c]
mov ecx, edi
call fcn.10051d20
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 0x10037ce1
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10059ba0
mov ecx, dword [0x100877fc]
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 0x10037d39
mov ecx, dword [ebp - 0x80]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10037d2f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10037e1d
push edx
push ecx
call fcn.1005ca70
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 0x10037d89
mov ecx, dword [ebp - 0x98]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10037d7f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10037e1d
push edx
push ecx
call fcn.1005ca70
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 0x10037dd8
mov ecx, dword [ebp - 0x68]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10037dce
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10037e1d
push edx
push ecx
call fcn.1005ca70
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 0x10037e2d
mov ecx, dword [ebp - 0xb0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10037e23
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x10037e23
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.1005ca70
add esp, 8
mov ecx, dword [0x1008b9e4]
mov edx, 0x10085528
cmp dword [0x1008553c], 0x10
push 0x1008c768
cmovae edx, dword [0x10085528]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x100382f9
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0xe3c]
mov dword [ebp - 0x28], 0x8f6ba3f1
mov dword [ebp - 0x24], 0x57982a7b
push 0x1008c768
test al, 1
jne 0x10037edc
or eax, 1
mov dword [esi + 0xe3c], 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 + 0x21c8], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x28]
mov byte [esi + ecx + 0x21c0], al
add ecx, 1
adc edx, 0
jne 0x10037ec8
cmp ecx, 8
jb 0x10037eb0
push 0x1006fcd0
call fcn.1005cb27
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x21c0]
mov ecx, edi
call fcn.10051a80
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 0x10037f07
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10059ba0
mov dword [ebp - 4], 0x5f
mov eax, dword [esi + 0x1c4c]
mov dword [ebp - 0x18], 0xff22bcbf
test al, 1
jne 0x10037f89
or eax, 1
mov dword [esi + 0x1c4c], 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 + 0x5e0], 1
nop dword [eax]
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x18]
mov byte [esi + ecx + 0x5dc], al
add ecx, 1
adc edx, 0
jne 0x10037f78
cmp ecx, 4
jb 0x10037f60
push 0x1006fd20
call fcn.1005cb27
add esp, 4
mov byte [ebp - 4], 0x5f
lea edi, [esi + 0x5dc]
mov ecx, edi
call fcn.10051ae0
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 0x10037fb0
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x80]
call fcn.10059ba0
mov byte [ebp - 4], 0x61
mov eax, dword [esi + 0xcc8]
mov dword [ebp - 0x20], 0x966fb6b6
mov dword [ebp - 0x1c], 0x7882736e
mov dword [ebp - 0x18], 0x9a20b5e9
mov word [ebp - 0x14], 0x57c
test al, 1
jne 0x10038039
or eax, 1
mov dword [esi + 0xcc8], 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 + 0x3a42], 1
nop
mov al, byte [ebp + ecx - 0x20]
mov byte [esi + ecx + 0x3a34], al
add ecx, 1
adc edx, 0
jne 0x10038028
cmp ecx, 0xe
jb 0x10038010
push 0x1006fd70
call fcn.1005cb27
add esp, 4
mov byte [ebp - 4], 0x61
lea edi, [esi + 0x3a34]
mov ecx, edi
call fcn.10051b40
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 0x10038066
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0xb0]
call fcn.10059ba0
push 0x10085510
lea edx, [ebp - 0xb0]
mov byte [ebp - 4], 0x63
lea ecx, [ebp - 0xe0]
call fcn.10059d40
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.1005b170
sub esp, 0x18
mov byte [ebp - 4], 0x65
mov ecx, esp
mov dword [ebp - 0x30], esp
lea edx, [ebp - 0xc8]
push 0x10085570
call fcn.10059d40
add esp, 4
mov byte [ebp - 4], 0x66
mov eax, dword [esi + 0x7cc]
mov dword [ebp - 0x48], 0x937eb8f2
mov dword [ebp - 0x44], 0x27d66720
mov dword [ebp - 0x40], 0x9c31a5fc
mov word [ebp - 0x3c], 0x682e
mov byte [ebp - 0x3a], 0xb7
test al, 1
jne 0x10038149
or eax, 1
mov dword [esi + 0x7cc], 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 + 0x2eb3], 1
nop
mov al, byte [ebp + ecx - 0x48]
mov byte [esi + ecx + 0x2ea4], al
add ecx, 1
adc edx, 0
jne 0x10038138
cmp ecx, 0xf
jb 0x10038120
push 0x1006fdc0
call fcn.1005cb27
add esp, 4
mov byte [ebp - 4], 0x66
lea esi, [esi + 0x2ea4]
mov ecx, esi
call fcn.10051ba0
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 0x10038171
sub ecx, edi
push ecx
push esi
mov ecx, edx
call fcn.10059ba0
mov ecx, dword [0x100877fc]
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 0x100381cf
mov ecx, dword [ebp - 0xc8]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100381c5
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100382c5
push edx
push ecx
call fcn.1005ca70
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 0x10038228
mov ecx, dword [ebp - 0xe0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003821e
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100382c5
push edx
push ecx
call fcn.1005ca70
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 0x1003827d
mov ecx, dword [ebp - 0xb0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10038273
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100382c5
push edx
push ecx
call fcn.1005ca70
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 0x100382d5
mov ecx, dword [ebp - 0x80]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100382cb
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x100382cb
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.1005ca70
add esp, 8
mov ecx, dword [0x1008b9e4]
mov edx, 0x10085528
cmp dword [0x1008553c], 0x10
push 0x1008c768
cmovae edx, dword [0x10085528]
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.1005c149
mov esp, ebp
pop ebp
ret