Function at 0x10033170
Capabilities:
Parse pe header

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1007a0b3
mov eax, dword fs:[0]
push eax
sub esp, 0xdc
mov eax, dword [0x100a700c]
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 [0x100a9268]
push 0x100ac6b8
push 0
push 0
mov esi, dword [eax + ecx*4]
mov dword [ebp - 0x20], 0x1726ce15
mov eax, dword [esi + 0x3f8c]
test al, 1
jne 0x1003321c
or eax, 1
mov dword [esi + 0x3f8c], eax
mov dword [ebp - 4], 0
xorps xmm0, xmm0
movlpd qword [ebp - 0x18], xmm0
mov edx, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x18]
mov byte [esi + 0x4c04], 1
nop dword [eax]
mov al, byte [ebp + ecx - 0x20]
mov byte [esi + ecx + 0x4c00], al
add ecx, 1
adc edx, 0
jne 0x10033208
cmp ecx, 4
jb 0x100331f0
push 0x10089bd0
call fcn.10074716
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x4c00]
mov ecx, edi
call fcn.1006e530
mov ecx, edi
mov dword [ebp - 0x70], 0
mov dword [ebp - 0x60], 0
mov dword [ebp - 0x5c], 0xf
mov byte [ebp - 0x70], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10033247
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x70]
call fcn.100711e0
mov dword [ebp - 4], 1
mov eax, dword [esi + 0x13c0]
mov dword [ebp - 0x40], 0x7e6bc41c
mov dword [ebp - 0x3c], 0x8c00aba8
mov dword [ebp - 0x38], 0x7224c743
mov word [ebp - 0x34], 0xddba
test al, 1
jne 0x100332d9
or eax, 1
mov dword [esi + 0x13c0], eax
mov byte [ebp - 4], 2
xorps xmm0, xmm0
movlpd qword [ebp - 0x18], xmm0
mov edx, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x18]
mov byte [esi + 0x2196], 1
nop dword [eax + eax]
mov al, byte [ebp + ecx - 0x40]
mov byte [esi + ecx + 0x2188], al
add ecx, 1
adc edx, 0
jne 0x100332c8
cmp ecx, 0xe
jb 0x100332b0
push 0x10089c20
call fcn.10074716
add esp, 4
mov byte [ebp - 4], 1
lea edi, [esi + 0x2188]
mov ecx, edi
call fcn.1006e590
mov ecx, edi
mov dword [ebp - 0x58], 0
mov dword [ebp - 0x48], 0
mov dword [ebp - 0x44], 0xf
mov byte [ebp - 0x58], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10033304
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x58]
call fcn.100711e0
push 0x100a8494
lea edx, [ebp - 0x58]
mov byte [ebp - 4], 3
lea ecx, [ebp - 0xb8]
call fcn.10071380
add esp, 4
lea ecx, [ebp - 0x70]
mov byte [ebp - 4], 4
push ecx
push eax
push dword [ebp - 0x1f]
lea ecx, [ebp - 0x88]
call fcn.10072d40
sub esp, 0x18
mov byte [ebp - 4], 5
mov ecx, esp
mov dword [ebp - 0x20], esp
lea edx, [ebp - 0x88]
push 0x100a88c8
call fcn.10071380
add esp, 4
mov byte [ebp - 4], 6
movaps xmm0, xmmword [0x10099ab0]
mov eax, dword [esi + 0x3c18]
mov byte [ebp - 0x30], 0x33
movups xmmword [ebp - 0x40], xmm0
test al, 1
jne 0x100333d9
or eax, 1
mov dword [esi + 0x3c18], eax
mov byte [ebp - 4], 7
xorps xmm0, xmm0
movlpd qword [ebp - 0x18], xmm0
mov edx, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x18]
mov byte [esi + 0x4599], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x40]
mov byte [esi + ecx + 0x4588], al
add ecx, 1
adc edx, 0
jne 0x100333c8
cmp ecx, 0x11
jb 0x100333b0
push 0x10089c70
call fcn.10074716
add esp, 4
mov byte [ebp - 4], 6
lea edi, [esi + 0x4588]
mov ecx, edi
call fcn.1006e5f0
sub esp, 0x18
mov ecx, edi
mov edx, esp
lea ebx, [ecx + 1]
mov dword [edx], 0
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0xf
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10033404
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.100711e0
mov ecx, dword [0x100af618]
mov eax, dword [ecx]
mov byte [ebp - 4], 5
call dword [eax + 4]
mov byte [ebp - 4], 4
mov edx, dword [ebp - 0x74]
cmp edx, 0x10
jb 0x10033460
mov ecx, dword [ebp - 0x88]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10033456
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10033541
push edx
push ecx
call fcn.1007465f
add esp, 8
mov byte [ebp - 4], 3
mov edx, dword [ebp - 0xa4]
mov dword [ebp - 0x78], 0
mov dword [ebp - 0x74], 0xf
mov byte [ebp - 0x88], 0
cmp edx, 0x10
jb 0x100334b3
mov ecx, dword [ebp - 0xb8]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100334a9
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10033541
push edx
push ecx
call fcn.1007465f
add esp, 8
mov byte [ebp - 4], 1
mov edx, dword [ebp - 0x44]
mov dword [ebp - 0xa8], 0
mov dword [ebp - 0xa4], 0xf
mov byte [ebp - 0xb8], 0
cmp edx, 0x10
jb 0x10033502
mov ecx, dword [ebp - 0x58]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100334f8
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10033541
push edx
push ecx
call fcn.1007465f
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x5c]
mov dword [ebp - 0x48], 0
mov dword [ebp - 0x44], 0xf
mov byte [ebp - 0x58], 0
cmp edx, 0x10
jb 0x10033551
mov ecx, dword [ebp - 0x70]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10033547
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x10033547
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.1007465f
add esp, 8
mov ecx, dword [0x100ab51c]
mov edx, 0x100a8880
cmp dword [0x100a8894], 0x10
push 0x100ac6b8
cmovae edx, dword [0x100a8880]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x1003591c
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x2080]
mov dword [ebp - 0x20], 0x3b548eab
push 0x100ac6b8
push 0
push 0
test al, 1
jne 0x100335fc
or eax, 1
mov dword [esi + 0x2080], eax
mov dword [ebp - 4], 8
xorps xmm0, xmm0
movlpd qword [ebp - 0x18], xmm0
mov edx, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x18]
mov byte [esi + 0x1f80], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x20]
mov byte [esi + ecx + 0x1f7c], al
add ecx, 1
adc edx, 0
jne 0x100335e8
cmp ecx, 4
jb 0x100335d0
push 0x10089ae0
call fcn.10074716
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x1f7c]
mov ecx, edi
call fcn.1006e410
mov ecx, edi
mov dword [ebp - 0x70], 0
mov dword [ebp - 0x60], 0
mov dword [ebp - 0x5c], 0xf
mov byte [ebp - 0x70], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10033627
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x70]
call fcn.100711e0
mov dword [ebp - 4], 9
mov eax, dword [esi + 0x314c]
mov dword [ebp - 0x40], 0x521984a2
mov dword [ebp - 0x3c], 0x9c74e514
mov dword [ebp - 0x38], 0x5e5687fd
mov word [ebp - 0x34], 0x9306
test al, 1
jne 0x100336b9
or eax, 1
mov dword [esi + 0x314c], eax
mov byte [ebp - 4], 0xa
xorps xmm0, xmm0
movlpd qword [ebp - 0x18], xmm0
mov edx, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x18]
mov byte [esi + 0xe8a], 1
nop dword [eax + eax]
mov al, byte [ebp + ecx - 0x40]
mov byte [ecx + esi + 0xe7c], al
add ecx, 1
adc edx, 0
jne 0x100336a8
cmp ecx, 0xe
jb 0x10033690
push 0x10089b30
call fcn.10074716
add esp, 4
mov byte [ebp - 4], 9
lea edi, [esi + 0xe7c]
mov ecx, edi
call fcn.1006e470
mov ecx, edi
mov dword [ebp - 0x58], 0
mov dword [ebp - 0x48], 0
mov dword [ebp - 0x44], 0xf
mov byte [ebp - 0x58], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100336e4
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x58]
call fcn.100711e0
push 0x100a8680
lea edx, [ebp - 0x58]
mov byte [ebp - 4], 0xb
lea ecx, [ebp - 0xb8]
call fcn.10071380
add esp, 4
lea ecx, [ebp - 0x70]
mov byte [ebp - 4], 0xc
push ecx
push eax
push dword [ebp - 0x33]
lea ecx, [ebp - 0x88]
call fcn.10072d40
sub esp, 0x18
mov byte [ebp - 4], 0xd
mov ecx, esp
mov dword [ebp - 0x34], esp
lea edx, [ebp - 0x88]
push 0x100a88c8
call fcn.10071380
add esp, 4
mov byte [ebp - 4], 0xe
movaps xmm0, xmmword [0x10099c30]
mov eax, dword [esi + 0x3d68]
mov byte [ebp - 0x1c], 0x8d
movups xmmword [ebp - 0x2c], xmm0
test al, 1
jne 0x100337b9
or eax, 1
mov dword [esi + 0x3d68], eax
mov byte [ebp - 4], 0xf
xorps xmm0, xmm0
movlpd qword [ebp - 0x18], xmm0
mov edx, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x18]
mov byte [esi + 0x450d], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x2c]
mov byte [ecx + esi + 0x44fc], al
add ecx, 1
adc edx, 0
jne 0x100337a8
cmp ecx, 0x11
jb 0x10033790
push 0x10089b80
call fcn.10074716
add esp, 4
mov byte [ebp - 4], 0xe
lea edi, [esi + 0x44fc]
mov ecx, edi
call fcn.1006e4d0
sub esp, 0x18
mov ecx, edi
mov edx, esp
lea ebx, [ecx + 1]
mov dword [edx], 0
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0xf
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100337e4
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.100711e0
mov ecx, dword [0x100af618]
mov eax, dword [ecx]
mov byte [ebp - 4], 0xd
call dword [eax + 4]
mov byte [ebp - 4], 0xc
mov edx, dword [ebp - 0x74]
cmp edx, 0x10
jb 0x10033840
mov ecx, dword [ebp - 0x88]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10033836
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10033921
push edx
push ecx
call fcn.1007465f
add esp, 8
mov byte [ebp - 4], 0xb
mov edx, dword [ebp - 0xa4]
mov dword [ebp - 0x78], 0
mov dword [ebp - 0x74], 0xf
mov byte [ebp - 0x88], 0
cmp edx, 0x10
jb 0x10033893
mov ecx, dword [ebp - 0xb8]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10033889
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10033921
push edx
push ecx
call fcn.1007465f
add esp, 8
mov byte [ebp - 4], 9
mov edx, dword [ebp - 0x44]
mov dword [ebp - 0xa8], 0
mov dword [ebp - 0xa4], 0xf
mov byte [ebp - 0xb8], 0
cmp edx, 0x10
jb 0x100338e2
mov ecx, dword [ebp - 0x58]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100338d8
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10033921
push edx
push ecx
call fcn.1007465f
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x5c]
mov dword [ebp - 0x48], 0
mov dword [ebp - 0x44], 0xf
mov byte [ebp - 0x58], 0
cmp edx, 0x10
jb 0x10033931
mov ecx, dword [ebp - 0x70]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10033927
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x10033927
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.1007465f
add esp, 8
mov ecx, dword [0x100ab51c]
mov edx, 0x100a8880
cmp dword [0x100a8894], 0x10
push 0x100ac6b8
cmovae edx, dword [0x100a8880]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x1003591c
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x4450]
mov dword [ebp - 0x20], 0xc308f2cd
push 0x100ac6b8
push 0
push 0
test al, 1
jne 0x100339dc
or eax, 1
mov dword [esi + 0x4450], eax
mov dword [ebp - 4], 0x10
xorps xmm0, xmm0
movlpd qword [ebp - 0x18], xmm0
mov edx, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x18]
mov byte [esi + 0x4574], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x20]
mov byte [ecx + esi + 0x4570], al
add ecx, 1
adc edx, 0
jne 0x100339c8
cmp ecx, 4
jb 0x100339b0
push 0x100899f0
call fcn.10074716
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x4570]
mov ecx, edi
call fcn.1006e2f0
mov ecx, edi
mov dword [ebp - 0x70], 0
mov dword [ebp - 0x60], 0
mov dword [ebp - 0x5c], 0xf
mov byte [ebp - 0x70], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10033a07
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x70]
call fcn.100711e0
mov dword [ebp - 4], 0x11
mov eax, dword [esi + 0x2164]
mov dword [ebp - 0x40], 0xaa45f8c4
mov dword [ebp - 0x3c], 0x7c80c3cc
mov dword [ebp - 0x38], 0xa60afb9b
mov word [ebp - 0x34], 0xb5de
test al, 1
jne 0x10033a99
or eax, 1
mov dword [esi + 0x2164], eax
mov byte [ebp - 4], 0x12
xorps xmm0, xmm0
movlpd qword [ebp - 0x18], xmm0
mov edx, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x18]
mov byte [esi + 0x186], 1
nop dword [eax + eax]
mov al, byte [ebp + ecx - 0x40]
mov byte [ecx + esi + 0x178], al
add ecx, 1
adc edx, 0
jne 0x10033a88
cmp ecx, 0xe
jb 0x10033a70
push 0x10089a40
call fcn.10074716
add esp, 4
mov byte [ebp - 4], 0x11
lea edi, [esi + 0x178]
mov ecx, edi
call fcn.1006e350
mov ecx, edi
mov dword [ebp - 0x58], 0
mov dword [ebp - 0x48], 0
mov dword [ebp - 0x44], 0xf
mov byte [ebp - 0x58], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10033ac4
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x58]
call fcn.100711e0
push 0x100a8868
lea edx, [ebp - 0x58]
mov byte [ebp - 4], 0x13
lea ecx, [ebp - 0xb8]
call fcn.10071380
add esp, 4
lea ecx, [ebp - 0x70]
mov byte [ebp - 4], 0x14
push ecx
push eax
push dword [ebp - 0x33]
lea ecx, [ebp - 0x88]
call fcn.10072d40
sub esp, 0x18
mov byte [ebp - 4], 0x15
mov ecx, esp
mov dword [ebp - 0x34], esp
lea edx, [ebp - 0x88]
push 0x100a88c8
call fcn.10071380
add esp, 4
mov byte [ebp - 4], 0x16
movaps xmm0, xmmword [0x10098ad0]
mov eax, dword [esi + 0x2a34]
mov byte [ebp - 0x1c], 0xeb
movups xmmword [ebp - 0x2c], xmm0
test al, 1
jne 0x10033b99
or eax, 1
mov dword [esi + 0x2a34], eax
mov byte [ebp - 4], 0x17
xorps xmm0, xmm0
movlpd qword [ebp - 0x18], xmm0
mov edx, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x18]
mov byte [esi + 0x2535], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x2c]
mov byte [ecx + esi + 0x2524], al
add ecx, 1
adc edx, 0
jne 0x10033b88
cmp ecx, 0x11
jb 0x10033b70
push 0x10089a90
call fcn.10074716
add esp, 4
mov byte [ebp - 4], 0x16
lea edi, [esi + 0x2524]
mov ecx, edi
call fcn.1006e3b0
sub esp, 0x18
mov ecx, edi
mov edx, esp
lea ebx, [ecx + 1]
mov dword [edx], 0
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0xf
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10033bc4
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.100711e0
mov ecx, dword [0x100af618]
mov eax, dword [ecx]
mov byte [ebp - 4], 0x15
call dword [eax + 4]
mov byte [ebp - 4], 0x14
mov edx, dword [ebp - 0x74]
cmp edx, 0x10
jb 0x10033c20
mov ecx, dword [ebp - 0x88]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10033c16
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10033d01
push edx
push ecx
call fcn.1007465f
add esp, 8
mov byte [ebp - 4], 0x13
mov edx, dword [ebp - 0xa4]
mov dword [ebp - 0x78], 0
mov dword [ebp - 0x74], 0xf
mov byte [ebp - 0x88], 0
cmp edx, 0x10
jb 0x10033c73
mov ecx, dword [ebp - 0xb8]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10033c69
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10033d01
push edx
push ecx
call fcn.1007465f
add esp, 8
mov byte [ebp - 4], 0x11
mov edx, dword [ebp - 0x44]
mov dword [ebp - 0xa8], 0
mov dword [ebp - 0xa4], 0xf
mov byte [ebp - 0xb8], 0
cmp edx, 0x10
jb 0x10033cc2
mov ecx, dword [ebp - 0x58]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10033cb8
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10033d01
push edx
push ecx
call fcn.1007465f
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x5c]
mov dword [ebp - 0x48], 0
mov dword [ebp - 0x44], 0xf
mov byte [ebp - 0x58], 0
cmp edx, 0x10
jb 0x10033d11
mov ecx, dword [ebp - 0x70]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10033d07
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x10033d07
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.1007465f
add esp, 8
mov ecx, dword [0x100ab51c]
mov edx, 0x100a8880
cmp dword [0x100a8894], 0x10
push 0x100ac6b8
cmovae edx, dword [0x100a8880]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x1003591c
mov ecx, 0x100ac6b8
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10033d45
sub ecx, edx
cmp ecx, 0x20
jae 0x10033d5c
cmp ecx, 1
ja 0x1003591c
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0xbfc]
mov dword [ebp - 0x38], 0xa361b96f
mov dword [ebp - 0x34], 0x5ad4f934
mov byte [ebp - 0x30], 7
push 0x100ac6b8
test al, 1
jne 0x10033ddc
or eax, 1
mov dword [esi + 0xbfc], eax
mov dword [ebp - 4], 0x18
xorps xmm0, xmm0
movlpd qword [ebp - 0x18], xmm0
mov edx, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x18]
mov byte [esi + 0x10e1], 1
nop dword [eax]
mov al, byte [ebp + ecx - 0x38]
mov byte [ecx + esi + 0x10d8], al
add ecx, 1
adc edx, 0
jne 0x10033dc8
cmp ecx, 9
jb 0x10033db0
push 0x100898b0
call fcn.10074716
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x10d8]
mov ecx, edi
call fcn.1006e170
sub esp, 0x18
mov ecx, edi
mov edx, esp
mov dword [ebp - 0x34], esp
lea ebx, [ecx + 1]
mov dword [edx], 0
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0xf
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10033e10
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.100711e0
mov dword [ebp - 4], 0x19
mov eax, dword [esi + 0x307c]
mov dword [ebp - 0x20], 0xd328a621
test al, 1
jne 0x10033e89
or eax, 1
mov dword [esi + 0x307c], eax
mov byte [ebp - 4], 0x1a
xorps xmm0, xmm0
movlpd qword [ebp - 0x18], xmm0
mov edx, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x18]
mov byte [esi + 0x3d08], 1
nop dword [eax]
mov al, byte [ebp + ecx - 0x20]
mov byte [ecx + esi + 0x3d04], al
add ecx, 1
adc edx, 0
jne 0x10033e78
cmp ecx, 4
jb 0x10033e60
push 0x10089900
call fcn.10074716
add esp, 4
mov byte [ebp - 4], 0x19
lea edi, [esi + 0x3d04]
mov ecx, edi
call fcn.1006e1d0
mov ecx, edi
mov dword [ebp - 0xa0], 0
mov dword [ebp - 0x90], 0
mov dword [ebp - 0x8c], 0xf
mov byte [ebp - 0xa0], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10033ec0
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0xa0]
call fcn.100711e0
mov byte [ebp - 4], 0x1b
mov eax, dword [esi + 0x7c0]
mov dword [ebp - 0x2c], 0xba65ac28
mov dword [ebp - 0x28], 0x5ac8b568
mov dword [ebp - 0x24], 0xb62aaf77
mov word [ebp - 0x20], 0xc37a
test al, 1
jne 0x10033f4a
or eax, 1
mov dword [esi + 0x7c0], eax
mov byte [ebp - 4], 0x1c
xorps xmm0, xmm0
movlpd qword [ebp - 0x18], xmm0
mov edx, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x18]
mov byte [esi + 0x1fc2], 1
mov al, byte [ebp + ecx - 0x2c]
mov byte [ecx + esi + 0x1fb4], al
add ecx, 1
adc edx, 0
jne 0x10033f39
cmp ecx, 0xe
jb 0x10033f21
push 0x10089950
call fcn.10074716
add esp, 4
mov byte [ebp - 4], 0x1b
lea edi, [esi + 0x1fb4]
mov ecx, edi
call fcn.1006e230
mov ecx, edi
mov dword [ebp - 0x70], 0
mov dword [ebp - 0x60], 0
mov dword [ebp - 0x5c], 0xf
mov byte [ebp - 0x70], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10033f75
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x70]
call fcn.100711e0
push 0x100a8494
lea edx, [ebp - 0x70]
mov byte [ebp - 4], 0x1d
lea ecx, [ebp - 0xb8]
call fcn.10071380
add esp, 4
lea ecx, [ebp - 0xa0]
mov byte [ebp - 4], 0x1e
push ecx
push eax
push dword [ebp - 0x33]
lea ecx, [ebp - 0x88]
call fcn.10072d40
sub esp, 0x18
mov byte [ebp - 4], 0x1f
mov ecx, esp
mov dword [ebp - 0x20], esp
lea edx, [ebp - 0x88]
push 0x100a88c8
call fcn.10071380
add esp, 4
mov byte [ebp - 4], 0x20
movaps xmm0, xmmword [0x10098640]
mov eax, dword [esi + 0x27a0]
mov byte [ebp - 0x44], 7
movups xmmword [ebp - 0x54], xmm0
test al, 1
jne 0x10034049
or eax, 1
mov dword [esi + 0x27a0], eax
mov byte [ebp - 4], 0x21
xorps xmm0, xmm0
movlpd qword [ebp - 0x18], xmm0
mov edx, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x18]
mov byte [esi + 0x311d], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x54]
mov byte [ecx + esi + 0x310c], al
add ecx, 1
adc edx, 0
jne 0x10034038
cmp ecx, 0x11
jb 0x10034020
push 0x100899a0
call fcn.10074716
add esp, 4
mov byte [ebp - 4], 0x20
lea edi, [esi + 0x310c]
mov ecx, edi
call fcn.1006e290
sub esp, 0x18
mov ecx, edi
mov edx, esp
lea ebx, [ecx + 1]
mov dword [edx], 0
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0xf
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10034074
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.100711e0
mov ecx, dword [0x100af618]
mov eax, dword [ecx]
mov byte [ebp - 4], 0x25
call dword [eax]
mov byte [ebp - 4], 0x24
mov edx, dword [ebp - 0x74]
cmp edx, 0x10
jb 0x100340cf
mov ecx, dword [ebp - 0x88]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100340c5
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100341b6
push edx
push ecx
call fcn.1007465f
add esp, 8
mov byte [ebp - 4], 0x23
mov edx, dword [ebp - 0xa4]
mov dword [ebp - 0x78], 0
mov dword [ebp - 0x74], 0xf
mov byte [ebp - 0x88], 0
cmp edx, 0x10
jb 0x10034122
mov ecx, dword [ebp - 0xb8]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10034118
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100341b6
push edx
push ecx
call fcn.1007465f
add esp, 8
mov byte [ebp - 4], 0x22
mov edx, dword [ebp - 0x5c]
mov dword [ebp - 0xa8], 0
mov dword [ebp - 0xa4], 0xf
mov byte [ebp - 0xb8], 0
cmp edx, 0x10
jb 0x10034171
mov ecx, dword [ebp - 0x70]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10034167
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100341b6
push edx
push ecx
call fcn.1007465f
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x8c]
mov dword [ebp - 0x60], 0
mov dword [ebp - 0x5c], 0xf
mov byte [ebp - 0x70], 0
cmp edx, 0x10
jb 0x100341c6
mov ecx, dword [ebp - 0xa0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100341bc
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x100341bc
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.1007465f
add esp, 8
mov ecx, dword [0x100ab51c]
mov edx, 0x100a8880
cmp dword [0x100a8894], 0x10
push 0x100ac6b8
cmovae edx, dword [0x100a8880]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x1003591c
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x1b4]
mov dword [ebp - 0x38], 0x53cb272b
mov dword [ebp - 0x34], 0x5cf00560
mov byte [ebp - 0x30], 0x43
push 0x100ac6b8
test al, 1
jne 0x1003427c
or eax, 1
mov dword [esi + 0x1b4], eax
mov dword [ebp - 4], 0x26
xorps xmm0, xmm0
movlpd qword [ebp - 0x18], xmm0
mov edx, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x18]
mov byte [esi + 0x1a45], 1
nop dword [eax]
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x38]
mov byte [ecx + esi + 0x1a3c], al
add ecx, 1
adc edx, 0
jne 0x10034268
cmp ecx, 9
jb 0x10034250
push 0x10089770
call fcn.10074716
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x1a3c]
mov ecx, edi
call fcn.1006dff0
sub esp, 0x18
mov ecx, edi
mov edx, esp
mov dword [ebp - 0x14], esp
lea ebx, [ecx + 1]
mov dword [edx], 0
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0xf
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100342b0
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.100711e0
mov dword [ebp - 4], 0x27
mov eax, dword [esi + 0x4a20]
mov dword [ebp - 0x20], 0x23823865
test al, 1
jne 0x10034329
or eax, 1
mov dword [esi + 0x4a20], eax
mov byte [ebp - 4], 0x28
xorps xmm0, xmm0
movlpd qword [ebp - 0x38], xmm0
mov edx, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x38]
mov byte [esi + 0x4994], 1
nop dword [eax]
mov al, byte [ebp + ecx - 0x20]
mov byte [ecx + esi + 0x4990], al
add ecx, 1
adc edx, 0
jne 0x10034318
cmp ecx, 4
jb 0x10034300
push 0x100897c0
call fcn.10074716
add esp, 4
mov byte [ebp - 4], 0x27
lea edi, [esi + 0x4990]
mov ecx, edi
call fcn.1006e050
mov ecx, edi
mov dword [ebp - 0xa0], 0
mov dword [ebp - 0x90], 0
mov dword [ebp - 0x8c], 0xf
mov byte [ebp - 0xa0], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10034360
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0xa0]
call fcn.100711e0
mov byte [ebp - 4], 0x29
mov eax, dword [esi + 0x30b0]
mov dword [ebp - 0x2c], 0x4acf326c
mov dword [ebp - 0x28], 0x5cec493c
mov dword [ebp - 0x24], 0x46803133
mov word [ebp - 0x20], 0x3f2e
test al, 1
jne 0x100343ea
or eax, 1
mov dword [esi + 0x30b0], eax
mov byte [ebp - 4], 0x2a
xorps xmm0, xmm0
movlpd qword [ebp - 0x38], xmm0
mov edx, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x38]
mov byte [esi + 0x152a], 1
mov al, byte [ebp + ecx - 0x2c]
mov byte [ecx + esi + 0x151c], al
add ecx, 1
adc edx, 0
jne 0x100343d9
cmp ecx, 0xe
jb 0x100343c1
push 0x10089810
call fcn.10074716
add esp, 4
mov byte [ebp - 4], 0x29
lea edi, [esi + 0x151c]
mov ecx, edi
call fcn.1006e0b0
mov ecx, edi
mov dword [ebp - 0x70], 0
mov dword [ebp - 0x60], 0
mov dword [ebp - 0x5c], 0xf
mov byte [ebp - 0x70], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10034415
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x70]
call fcn.100711e0
push 0x100a8680
lea edx, [ebp - 0x70]
mov byte [ebp - 4], 0x2b
lea ecx, [ebp - 0xb8]
call fcn.10071380
add esp, 4
lea ecx, [ebp - 0xa0]
mov byte [ebp - 4], 0x2c
push ecx
push eax
push dword [ebp - 0x14]
lea ecx, [ebp - 0x88]
call fcn.10072d40
sub esp, 0x18
mov byte [ebp - 4], 0x2d
mov ecx, esp
mov dword [ebp - 0x34], esp
lea edx, [ebp - 0x88]
push 0x100a88c8
call fcn.10071380
add esp, 4
mov byte [ebp - 4], 0x2e
movaps xmm0, xmmword [0x10098700]
mov eax, dword [esi + 0x1394]
mov byte [ebp - 0x44], 0x43
movups xmmword [ebp - 0x54], xmm0
test al, 1
jne 0x100344e9
or eax, 1
mov dword [esi + 0x1394], eax
mov byte [ebp - 4], 0x2f
xorps xmm0, xmm0
movlpd qword [ebp - 0x24], xmm0
mov edx, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x24]
mov byte [esi + 0xb15], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x54]
mov byte [esi + ecx + 0xb04], al
add ecx, 1
adc edx, 0
jne 0x100344d8
cmp ecx, 0x11
jb 0x100344c0
push 0x10089860
call fcn.10074716
add esp, 4
mov byte [ebp - 4], 0x2e
lea edi, [esi + 0xb04]
mov ecx, edi
call fcn.1006e110
sub esp, 0x18
mov ecx, edi
mov edx, esp
lea ebx, [ecx + 1]
mov dword [edx], 0
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0xf
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10034514
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.100711e0
mov ecx, dword [0x100af618]
mov eax, dword [ecx]
mov byte [ebp - 4], 0x33
call dword [eax]
mov byte [ebp - 4], 0x32
mov edx, dword [ebp - 0x74]
cmp edx, 0x10
jb 0x1003456f
mov ecx, dword [ebp - 0x88]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10034565
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10034656
push edx
push ecx
call fcn.1007465f
add esp, 8
mov byte [ebp - 4], 0x31
mov edx, dword [ebp - 0xa4]
mov dword [ebp - 0x78], 0
mov dword [ebp - 0x74], 0xf
mov byte [ebp - 0x88], 0
cmp edx, 0x10
jb 0x100345c2
mov ecx, dword [ebp - 0xb8]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100345b8
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10034656
push edx
push ecx
call fcn.1007465f
add esp, 8
mov byte [ebp - 4], 0x30
mov edx, dword [ebp - 0x5c]
mov dword [ebp - 0xa8], 0
mov dword [ebp - 0xa4], 0xf
mov byte [ebp - 0xb8], 0
cmp edx, 0x10
jb 0x10034611
mov ecx, dword [ebp - 0x70]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10034607
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10034656
push edx
push ecx
call fcn.1007465f
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x8c]
mov dword [ebp - 0x60], 0
mov dword [ebp - 0x5c], 0xf
mov byte [ebp - 0x70], 0
cmp edx, 0x10
jb 0x10034666
mov ecx, dword [ebp - 0xa0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003465c
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x1003465c
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.1007465f
add esp, 8
mov ecx, dword [0x100ab51c]
mov edx, 0x100a8880
cmp dword [0x100a8894], 0x10
push 0x100ac6b8
cmovae edx, dword [0x100a8880]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x1003591c
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x7d0]
mov dword [ebp - 0x38], 0xf5a9ff2f
mov dword [ebp - 0x34], 0xea6ca56c
mov byte [ebp - 0x30], 0x47
push 0x100ac6b8
test al, 1
jne 0x1003471c
or eax, 1
mov dword [esi + 0x7d0], eax
mov dword [ebp - 4], 0x34
xorps xmm0, xmm0
movlpd qword [ebp - 0x18], xmm0
mov edx, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x18]
mov byte [esi + 0x5fd], 1
nop dword [eax]
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x38]
mov byte [esi + ecx + 0x5f4], al
add ecx, 1
adc edx, 0
jne 0x10034708
cmp ecx, 9
jb 0x100346f0
push 0x10089630
call fcn.10074716
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x5f4]
mov ecx, edi
call fcn.1006de70
sub esp, 0x18
mov ecx, edi
mov edx, esp
mov dword [ebp - 0x14], esp
lea ebx, [ecx + 1]
mov dword [edx], 0
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0xf
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10034750
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.100711e0
mov dword [ebp - 4], 0x35
mov eax, dword [esi + 0x4528]
mov dword [ebp - 0x20], 0x85e0e061
test al, 1
jne 0x100347c9
or eax, 1
mov dword [esi + 0x4528], eax
mov byte [ebp - 4], 0x36
xorps xmm0, xmm0
movlpd qword [ebp - 0x38], xmm0
mov edx, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x38]
mov byte [esi + 0x1fc8], 1
nop dword [eax]
mov al, byte [ebp + ecx - 0x20]
mov byte [esi + ecx + 0x1fc4], al
add ecx, 1
adc edx, 0
jne 0x100347b8
cmp ecx, 4
jb 0x100347a0
push 0x10089680
call fcn.10074716
add esp, 4
mov byte [ebp - 4], 0x35
lea edi, [esi + 0x1fc4]
mov ecx, edi
call fcn.1006ded0
mov ecx, edi
mov dword [ebp - 0xa0], 0
mov dword [ebp - 0x90], 0
mov dword [ebp - 0x8c], 0xf
mov byte [ebp - 0xa0], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10034800
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0xa0]
call fcn.100711e0
mov byte [ebp - 4], 0x37
mov eax, dword [esi + 0x2bfc]
mov dword [ebp - 0x2c], 0xecadea68
mov dword [ebp - 0x28], 0xea70e930
mov dword [ebp - 0x24], 0xe0e2e937
mov word [ebp - 0x20], 0x9f22
test al, 1
jne 0x1003488a
or eax, 1
mov dword [esi + 0x2bfc], eax
mov byte [ebp - 4], 0x38
xorps xmm0, xmm0
movlpd qword [ebp - 0x38], xmm0
mov edx, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x38]
mov byte [esi + 0xe9a], 1
mov al, byte [ebp + ecx - 0x2c]
mov byte [esi + ecx + 0xe8c], al
add ecx, 1
adc edx, 0
jne 0x10034879
cmp ecx, 0xe
jb 0x10034861
push 0x100896d0
call fcn.10074716
add esp, 4
mov byte [ebp - 4], 0x37
lea edi, [esi + 0xe8c]
mov ecx, edi
call fcn.1006df30
mov ecx, edi
mov dword [ebp - 0x70], 0
mov dword [ebp - 0x60], 0
mov dword [ebp - 0x5c], 0xf
mov byte [ebp - 0x70], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100348b5
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x70]
call fcn.100711e0
push 0x100a8868
lea edx, [ebp - 0x70]
mov byte [ebp - 4], 0x39
lea ecx, [ebp - 0xb8]
call fcn.10071380
add esp, 4
lea ecx, [ebp - 0xa0]
mov byte [ebp - 4], 0x3a
push ecx
push eax
push dword [ebp - 0x14]
lea ecx, [ebp - 0x88]
call fcn.10072d40
sub esp, 0x18
mov byte [ebp - 4], 0x3b
mov ecx, esp
mov dword [ebp - 0x34], esp
lea edx, [ebp - 0x88]
push 0x100a88c8
call fcn.10071380
add esp, 4
mov byte [ebp - 4], 0x3c
movaps xmm0, xmmword [0x100996f0]
mov eax, dword [esi + 0x2a84]
mov byte [ebp - 0x44], 0x47
movups xmmword [ebp - 0x54], xmm0
test al, 1
jne 0x10034989
or eax, 1
mov dword [esi + 0x2a84], eax
mov byte [ebp - 4], 0x3d
xorps xmm0, xmm0
movlpd qword [ebp - 0x24], xmm0
mov edx, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x24]
mov byte [esi + 0x15ad], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x54]
mov byte [esi + ecx + 0x159c], al
add ecx, 1
adc edx, 0
jne 0x10034978
cmp ecx, 0x11
jb 0x10034960
push 0x10089720
call fcn.10074716
add esp, 4
mov byte [ebp - 4], 0x3c
lea edi, [esi + 0x159c]
mov ecx, edi
call fcn.1006df90
sub esp, 0x18
mov ecx, edi
mov edx, esp
lea ebx, [ecx + 1]
mov dword [edx], 0
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0xf
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100349b4
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.100711e0
mov ecx, dword [0x100af618]
mov eax, dword [ecx]
mov byte [ebp - 4], 0x41
call dword [eax]
mov byte [ebp - 4], 0x40
mov edx, dword [ebp - 0x74]
cmp edx, 0x10
jb 0x10034a0f
mov ecx, dword [ebp - 0x88]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10034a05
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10034af6
push edx
push ecx
call fcn.1007465f
add esp, 8
mov byte [ebp - 4], 0x3f
mov edx, dword [ebp - 0xa4]
mov dword [ebp - 0x78], 0
mov dword [ebp - 0x74], 0xf
mov byte [ebp - 0x88], 0
cmp edx, 0x10
jb 0x10034a62
mov ecx, dword [ebp - 0xb8]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10034a58
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10034af6
push edx
push ecx
call fcn.1007465f
add esp, 8
mov byte [ebp - 4], 0x3e
mov edx, dword [ebp - 0x5c]
mov dword [ebp - 0xa8], 0
mov dword [ebp - 0xa4], 0xf
mov byte [ebp - 0xb8], 0
cmp edx, 0x10
jb 0x10034ab1
mov ecx, dword [ebp - 0x70]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10034aa7
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10034af6
push edx
push ecx
call fcn.1007465f
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x8c]
mov dword [ebp - 0x60], 0
mov dword [ebp - 0x5c], 0xf
mov byte [ebp - 0x70], 0
cmp edx, 0x10
jb 0x10034b06
mov ecx, dword [ebp - 0xa0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10034afc
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x10034afc
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.1007465f
add esp, 8
mov ecx, dword [0x100ab51c]
mov edx, 0x100a8880
cmp dword [0x100a8894], 0x10
push 0x100ac6b8
cmovae edx, dword [0x100a8880]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x1003591c
mov ecx, 0x100ac6b8
lea edx, [ecx + 1]
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10034b40
sub ecx, edx
cmp ecx, 0x20
jae 0x10034b57
cmp ecx, 1
ja 0x1003591c
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x4370]
mov dword [ebp - 0x18], 0x5dbd61e3
mov dword [ebp - 0x14], 0xbdfe6c7d
push 0x100ac6b8
test al, 1
jne 0x10034bdc
or eax, 1
mov dword [esi + 0x4370], eax
mov dword [ebp - 4], 0x42
xorps xmm0, xmm0
movlpd qword [ebp - 0x38], xmm0
mov edx, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x38]
mov byte [esi + 0x2f74], 1
nop dword [eax]
nop dword [eax + eax]
mov al, byte [ebp + ecx - 0x18]
mov byte [esi + ecx + 0x2f6c], al
add ecx, 1
adc edx, 0
jne 0x10034bc8
cmp ecx, 8
jb 0x10034bb0
push 0x100894f0
call fcn.10074716
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x2f6c]
mov ecx, edi
call fcn.1006dcf0
sub esp, 0x18
mov ecx, edi
mov edx, esp
mov dword [ebp - 0x14], esp
lea ebx, [ecx + 1]
mov dword [edx], 0
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0xf
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10034c10
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.100711e0
mov dword [ebp - 4], 0x43
mov eax, dword [esi + 0xd8c]
mov dword [ebp - 0x20], 0x2df47ead
test al, 1
jne 0x10034c89
or eax, 1
mov dword [esi + 0xd8c], eax
mov byte [ebp - 4], 0x44
xorps xmm0, xmm0
movlpd qword [ebp - 0x38], xmm0
mov edx, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x38]
mov byte [esi + 0x1fd0], 1
nop dword [eax]
mov al, byte [ebp + ecx - 0x20]
mov byte [esi + ecx + 0x1fcc], al
add ecx, 1
adc edx, 0
jne 0x10034c78
cmp ecx, 4
jb 0x10034c60
push 0x10089540
call fcn.10074716
add esp, 4
mov byte [ebp - 4], 0x43
lea edi, [esi + 0x1fcc]
mov ecx, edi
call fcn.1006dd50
mov ecx, edi
mov dword [ebp - 0xa0], 0
mov dword [ebp - 0x90], 0
mov dword [ebp - 0x8c], 0xf
mov byte [ebp - 0xa0], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10034cc0
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0xa0]
call fcn.100711e0
mov byte [ebp - 4], 0x45
mov eax, dword [esi + 0x3078]
mov dword [ebp - 0x2c], 0x44b974a4
mov dword [ebp - 0x28], 0x92e23568
mov dword [ebp - 0x24], 0x48f677fb
mov word [ebp - 0x20], 0x437a
test al, 1
jne 0x10034d4a
or eax, 1
mov dword [esi + 0x3078], eax
mov byte [ebp - 4], 0x46
xorps xmm0, xmm0
movlpd qword [ebp - 0x38], xmm0
mov edx, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x38]
mov byte [esi + 0x3eba], 1
mov al, byte [ebp + ecx - 0x2c]
mov byte [esi + ecx + 0x3eac], al
add ecx, 1
adc edx, 0
jne 0x10034d39
cmp ecx, 0xe
jb 0x10034d21
push 0x10089590
call fcn.10074716
add esp, 4
mov byte [ebp - 4], 0x45
lea edi, [esi + 0x3eac]
mov ecx, edi
call fcn.1006ddb0
mov ecx, edi
mov dword [ebp - 0x70], 0
mov dword [ebp - 0x60], 0
mov dword [ebp - 0x5c], 0xf
mov byte [ebp - 0x70], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10034d75
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x70]
call fcn.100711e0
push 0x100a8494
lea edx, [ebp - 0x70]
mov byte [ebp - 4], 0x47
lea ecx, [ebp - 0xb8]
call fcn.10071380
add esp, 4
lea ecx, [ebp - 0xa0]
mov byte [ebp - 4], 0x48
push ecx
push eax
push dword [ebp - 0x14]
lea ecx, [ebp - 0x88]
call fcn.10072d40
sub esp, 0x18
mov byte [ebp - 4], 0x49
mov ecx, esp
mov dword [ebp - 0x34], esp
lea edx, [ebp - 0x88]
push 0x100a88c8
call fcn.10071380
add esp, 4
mov byte [ebp - 4], 0x4a
movaps xmm0, xmmword [0x10099ac0]
mov eax, dword [esi + 0xfc]
mov byte [ebp - 0x44], 0x8b
movups xmmword [ebp - 0x54], xmm0
test al, 1
jne 0x10034e49
or eax, 1
mov dword [esi + 0xfc], eax
mov byte [ebp - 4], 0x4b
xorps xmm0, xmm0
movlpd qword [ebp - 0x24], xmm0
mov edx, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x24]
mov byte [esi + 0x30d1], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x54]
mov byte [ecx + esi + 0x30c0], al
add ecx, 1
adc edx, 0
jne 0x10034e38
cmp ecx, 0x11
jb 0x10034e20
push 0x100895e0
call fcn.10074716
add esp, 4
mov byte [ebp - 4], 0x4a
lea edi, [esi + 0x30c0]
mov ecx, edi
call fcn.1006de10
sub esp, 0x18
mov ecx, edi
mov edx, esp
lea ebx, [ecx + 1]
mov dword [edx], 0
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0xf
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10034e74
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.100711e0
mov ecx, dword [0x100af618]
mov eax, dword [ecx]
mov byte [ebp - 4], 0x4f
call dword [eax]
mov byte [ebp - 4], 0x4e
mov edx, dword [ebp - 0x74]
cmp edx, 0x10
jb 0x10034ecf
mov ecx, dword [ebp - 0x88]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10034ec5
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10034fb6
push edx
push ecx
call fcn.1007465f
add esp, 8
mov byte [ebp - 4], 0x4d
mov edx, dword [ebp - 0xa4]
mov dword [ebp - 0x78], 0
mov dword [ebp - 0x74], 0xf
mov byte [ebp - 0x88], 0
cmp edx, 0x10
jb 0x10034f22
mov ecx, dword [ebp - 0xb8]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10034f18
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10034fb6
push edx
push ecx
call fcn.1007465f
add esp, 8
mov byte [ebp - 4], 0x4c
mov edx, dword [ebp - 0x5c]
mov dword [ebp - 0xa8], 0
mov dword [ebp - 0xa4], 0xf
mov byte [ebp - 0xb8], 0
cmp edx, 0x10
jb 0x10034f71
mov ecx, dword [ebp - 0x70]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10034f67
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10034fb6
push edx
push ecx
call fcn.1007465f
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x8c]
mov dword [ebp - 0x60], 0
mov dword [ebp - 0x5c], 0xf
mov byte [ebp - 0x70], 0
cmp edx, 0x10
jb 0x10034fc6
mov ecx, dword [ebp - 0xa0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10034fbc
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x10034fbc
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.1007465f
add esp, 8
mov ecx, dword [0x100ab51c]
mov edx, 0x100a8880
cmp dword [0x100a8894], 0x10
push 0x100ac6b8
cmovae edx, dword [0x100a8880]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x1003591c
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x3d4c]
mov dword [ebp - 0x18], 0xc1093fb3
mov dword [ebp - 0x14], 0x134428c1
push 0x100ac6b8
test al, 1
jne 0x1003506c
or eax, 1
mov dword [esi + 0x3d4c], eax
mov dword [ebp - 4], 0x50
xorps xmm0, xmm0
movlpd qword [ebp - 0x38], xmm0
mov edx, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x38]
mov byte [esi + 0x46d8], 1
nop
mov al, byte [ebp + ecx - 0x18]
mov byte [ecx + esi + 0x46d0], al
add ecx, 1
adc edx, 0
jne 0x10035058
cmp ecx, 8
jb 0x10035040
push 0x100893b0
call fcn.10074716
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x46d0]
mov ecx, edi
call fcn.1006db70
sub esp, 0x18
mov ecx, edi
mov edx, esp
mov dword [ebp - 0x14], esp
lea ebx, [ecx + 1]
mov dword [edx], 0
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0xf
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100350a0
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.100711e0
mov dword [ebp - 4], 0x51
mov eax, dword [esi + 0xde8]
mov dword [ebp - 0x20], 0xb14020fd
test al, 1
jne 0x10035119
or eax, 1
mov dword [esi + 0xde8], eax
mov byte [ebp - 4], 0x52
xorps xmm0, xmm0
movlpd qword [ebp - 0x38], xmm0
mov edx, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x38]
mov byte [esi + 0x3c58], 1
nop dword [eax]
mov al, byte [ebp + ecx - 0x20]
mov byte [ecx + esi + 0x3c54], al
add ecx, 1
adc edx, 0
jne 0x10035108
cmp ecx, 4
jb 0x100350f0
push 0x10089400
call fcn.10074716
add esp, 4
mov byte [ebp - 4], 0x51
lea edi, [esi + 0x3c54]
mov ecx, edi
call fcn.1006dbd0
mov ecx, edi
mov dword [ebp - 0xa0], 0
mov dword [ebp - 0x90], 0
mov dword [ebp - 0x8c], 0xf
mov byte [ebp - 0xa0], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10035150
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0xa0]
call fcn.100711e0
mov byte [ebp - 4], 0x53
mov eax, dword [esi + 0x1ff4]
mov dword [ebp - 0x2c], 0xd80d2af4
mov dword [ebp - 0x28], 0x3c5871d4
mov dword [ebp - 0x24], 0xd44229ab
mov word [ebp - 0x20], 0x7c6
test al, 1
jne 0x100351da
or eax, 1
mov dword [esi + 0x1ff4], eax
mov byte [ebp - 4], 0x54
xorps xmm0, xmm0
movlpd qword [ebp - 0x38], xmm0
mov edx, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x38]
mov byte [esi + 0x35be], 1
mov al, byte [ebp + ecx - 0x2c]
mov byte [ecx + esi + 0x35b0], al
add ecx, 1
adc edx, 0
jne 0x100351c9
cmp ecx, 0xe
jb 0x100351b1
push 0x10089450
call fcn.10074716
add esp, 4
mov byte [ebp - 4], 0x53
lea edi, [esi + 0x35b0]
mov ecx, edi
call fcn.1006dc30
mov ecx, edi
mov dword [ebp - 0x70], 0
mov dword [ebp - 0x60], 0
mov dword [ebp - 0x5c], 0xf
mov byte [ebp - 0x70], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10035205
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x70]
call fcn.100711e0
push 0x100a8680
lea edx, [ebp - 0x70]
mov byte [ebp - 4], 0x55
lea ecx, [ebp - 0xb8]
call fcn.10071380
add esp, 4
lea ecx, [ebp - 0xa0]
mov byte [ebp - 4], 0x56
push ecx
push eax
push dword [ebp - 0x14]
lea ecx, [ebp - 0x88]
call fcn.10072d40
sub esp, 0x18
mov byte [ebp - 4], 0x57
mov ecx, esp
mov dword [ebp - 0x34], esp
lea edx, [ebp - 0x88]
push 0x100a88c8
call fcn.10071380
add esp, 4
mov byte [ebp - 4], 0x58
movaps xmm0, xmmword [0x100991f0]
mov eax, dword [esi + 0x1410]
mov byte [ebp - 0x44], 0xdb
movups xmmword [ebp - 0x54], xmm0
test al, 1
jne 0x100352d9
or eax, 1
mov dword [esi + 0x1410], eax
mov byte [ebp - 4], 0x59
xorps xmm0, xmm0
movlpd qword [ebp - 0x24], xmm0
mov edx, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x24]
mov byte [esi + 0x17b5], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x54]
mov byte [esi + ecx + 0x17a4], al
add ecx, 1
adc edx, 0
jne 0x100352c8
cmp ecx, 0x11
jb 0x100352b0
push 0x100894a0
call fcn.10074716
add esp, 4
mov byte [ebp - 4], 0x58
lea edi, [esi + 0x17a4]
mov ecx, edi
call fcn.1006dc90
sub esp, 0x18
mov ecx, edi
mov edx, esp
lea ebx, [ecx + 1]
mov dword [edx], 0
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0xf
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10035304
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.100711e0
mov ecx, dword [0x100af618]
mov eax, dword [ecx]
mov byte [ebp - 4], 0x5d
call dword [eax]
mov byte [ebp - 4], 0x5c
mov edx, dword [ebp - 0x74]
cmp edx, 0x10
jb 0x1003535f
mov ecx, dword [ebp - 0x88]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10035355
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10035446
push edx
push ecx
call fcn.1007465f
add esp, 8
mov byte [ebp - 4], 0x5b
mov edx, dword [ebp - 0xa4]
mov dword [ebp - 0x78], 0
mov dword [ebp - 0x74], 0xf
mov byte [ebp - 0x88], 0
cmp edx, 0x10
jb 0x100353b2
mov ecx, dword [ebp - 0xb8]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100353a8
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10035446
push edx
push ecx
call fcn.1007465f
add esp, 8
mov byte [ebp - 4], 0x5a
mov edx, dword [ebp - 0x5c]
mov dword [ebp - 0xa8], 0
mov dword [ebp - 0xa4], 0xf
mov byte [ebp - 0xb8], 0
cmp edx, 0x10
jb 0x10035401
mov ecx, dword [ebp - 0x70]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100353f7
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10035446
push edx
push ecx
call fcn.1007465f
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x8c]
mov dword [ebp - 0x60], 0
mov dword [ebp - 0x5c], 0xf
mov byte [ebp - 0x70], 0
cmp edx, 0x10
jb 0x10035456
mov ecx, dword [ebp - 0xa0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003544c
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x1003544c
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.1007465f
add esp, 8
mov ecx, dword [0x100ab51c]
mov edx, 0x100a8880
cmp dword [0x100a8894], 0x10
push 0x100ac6b8
cmovae edx, dword [0x100a8880]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x1003591c
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x3894]
mov dword [ebp - 0x18], 0x57555d4b
mov dword [ebp - 0x14], 0xd71a6867
push 0x100ac6b8
test al, 1
jne 0x100354fc
or eax, 1
mov dword [esi + 0x3894], eax
mov dword [ebp - 4], 0x5e
xorps xmm0, xmm0
movlpd qword [ebp - 0x38], xmm0
mov edx, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x38]
mov byte [esi + 0x32c], 1
nop
mov al, byte [ebp + ecx - 0x18]
mov byte [esi + ecx + 0x324], al
add ecx, 1
adc edx, 0
jne 0x100354e8
cmp ecx, 8
jb 0x100354d0
push 0x10089270
call fcn.10074716
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x324]
mov ecx, edi
call fcn.1006d9f0
sub esp, 0x18
mov ecx, edi
mov edx, esp
mov dword [ebp - 0x14], esp
lea ebx, [ecx + 1]
mov dword [edx], 0
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0xf
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10035530
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.100711e0
mov dword [ebp - 4], 0x5f
mov eax, dword [esi + 0x1acc]
mov dword [ebp - 0x20], 0x271c4205
test al, 1
jne 0x100355a9
or eax, 1
mov dword [esi + 0x1acc], eax
mov byte [ebp - 4], 0x60
xorps xmm0, xmm0
movlpd qword [ebp - 0x38], xmm0
mov edx, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x38]
mov byte [esi + 0x17bc], 1
nop dword [eax]
mov al, byte [ebp + ecx - 0x20]
mov byte [esi + ecx + 0x17b8], al
add ecx, 1
adc edx, 0
jne 0x10035598
cmp ecx, 4
jb 0x10035580
push 0x100892c0
call fcn.10074716
add esp, 4
mov byte [ebp - 4], 0x5f
lea edi, [esi + 0x17b8]
mov ecx, edi
call fcn.1006da50
mov ecx, edi
mov dword [ebp - 0x70], 0
mov dword [ebp - 0x60], 0
mov dword [ebp - 0x5c], 0xf
mov byte [ebp - 0x70], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100355d4
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x70]
call fcn.100711e0
mov byte [ebp - 4], 0x61
mov eax, dword [esi + 0x1d60]
mov dword [ebp - 0x2c], 0x4e51480c
mov dword [ebp - 0x28], 0xf8063172
mov dword [ebp - 0x24], 0x421e4b53
mov word [ebp - 0x20], 0x4760
test al, 1
jne 0x1003565b
or eax, 1
mov dword [esi + 0x1d60], eax
mov byte [ebp - 4], 0x62
xorps xmm0, xmm0
movlpd qword [ebp - 0x38], xmm0
mov edx, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x38]
mov byte [esi + 0x285a], 1
mov al, byte [ebp + ecx - 0x2c]
mov byte [esi + ecx + 0x284c], al
add ecx, 1
adc edx, 0
jne 0x1003564a
cmp ecx, 0xe
jb 0x10035632
push 0x10089310
call fcn.10074716
add esp, 4
mov byte [ebp - 4], 0x61
lea edi, [esi + 0x284c]
mov ecx, edi
call fcn.1006dab0
mov ecx, edi
mov dword [ebp - 0xa0], 0
mov dword [ebp - 0x90], 0
mov dword [ebp - 0x8c], 0xf
mov byte [ebp - 0xa0], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10035692
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0xa0]
call fcn.100711e0
push 0x100a8868
lea edx, [ebp - 0xa0]
mov byte [ebp - 4], 0x63
lea ecx, [ebp - 0xe8]
call fcn.10071380
add esp, 4
lea ecx, [ebp - 0x70]
mov byte [ebp - 4], 0x64
push ecx
push eax
push dword [ebp - 0x14]
lea ecx, [ebp - 0xd0]
call fcn.10072d40
sub esp, 0x18
mov byte [ebp - 4], 0x65
mov ecx, esp
mov dword [ebp - 0x34], esp
lea edx, [ebp - 0xd0]
push 0x100a88c8
call fcn.10071380
add esp, 4
mov byte [ebp - 4], 0x66
movaps xmm0, xmmword [str.PHLF_._]
mov eax, dword [esi + 0x2d70]
mov byte [ebp - 0x44], 0x23
movups xmmword [ebp - 0x54], xmm0
test al, 1
jne 0x10035769
or eax, 1
mov dword [esi + 0x2d70], eax
mov byte [ebp - 4], 0x67
xorps xmm0, xmm0
movlpd qword [ebp - 0x24], xmm0
mov edx, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x24]
mov byte [esi + 0x9d5], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x54]
mov byte [esi + ecx + 0x9c4], al
add ecx, 1
adc edx, 0
jne 0x10035758
cmp ecx, 0x11
jb 0x10035740
push 0x10089360
call fcn.10074716
add esp, 4
mov byte [ebp - 4], 0x66
lea esi, [esi + 0x9c4]
mov ecx, esi
call fcn.1006db10
sub esp, 0x18
mov ecx, esi
mov edx, esp
lea edi, [ecx + 1]
mov dword [edx], 0
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0xf
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10035794
sub ecx, edi
push ecx
push esi
mov ecx, edx
call fcn.100711e0
mov ecx, dword [0x100af618]
mov eax, dword [ecx]
mov byte [ebp - 4], 0x6b
call dword [eax]
mov byte [ebp - 4], 0x6a
mov edx, dword [ebp - 0xbc]
cmp edx, 0x10
jb 0x100357f2
mov ecx, dword [ebp - 0xd0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100357e8
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100358e8
push edx
push ecx
call fcn.1007465f
add esp, 8
mov byte [ebp - 4], 0x69
mov edx, dword [ebp - 0xd4]
mov dword [ebp - 0xc0], 0
mov dword [ebp - 0xbc], 0xf
mov byte [ebp - 0xd0], 0
cmp edx, 0x10
jb 0x1003584b
mov ecx, dword [ebp - 0xe8]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10035841
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100358e8
push edx
push ecx
call fcn.1007465f
add esp, 8
mov byte [ebp - 4], 0x68
mov edx, dword [ebp - 0x8c]
mov dword [ebp - 0xd8], 0
mov dword [ebp - 0xd4], 0xf
mov byte [ebp - 0xe8], 0
cmp edx, 0x10
jb 0x100358a0
mov ecx, dword [ebp - 0xa0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10035896
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100358e8
push edx
push ecx
call fcn.1007465f
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x5c]
mov dword [ebp - 0x90], 0
mov dword [ebp - 0x8c], 0xf
mov byte [ebp - 0xa0], 0
cmp edx, 0x10
jb 0x100358f8
mov ecx, dword [ebp - 0x70]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100358ee
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x100358ee
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.1007465f
add esp, 8
mov ecx, dword [0x100ab51c]
mov edx, 0x100a8880
cmp dword [0x100a8894], 0x10
push 0x100ac6b8
cmovae edx, dword [0x100a8880]
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.10073d39
mov esp, ebp
pop ebp
ret