Function at 0x10030b30
Capabilities:
Parse pe header

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x10079751
mov eax, dword fs:[0]
push eax
sub esp, 0xd4
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 0x100ac6c0
push 0
push 0
mov esi, dword [eax + ecx*4]
mov dword [ebp - 0x18], 0xa31c6af5
mov eax, dword [esi + 0x3960]
test al, 1
jne 0x10030bdc
or eax, 1
mov dword [esi + 0x3960], 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 + 0x3c18], 1
nop dword [eax]
mov al, byte [ebp + ecx - 0x18]
mov byte [esi + ecx + 0x3c14], al
add ecx, 1
adc edx, 0
jne 0x10030bc8
cmp ecx, 4
jb 0x10030bb0
push 0x10089130
call fcn.10074356
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x3c14]
mov ecx, edi
call fcn.1006ed50
mov ecx, edi
mov dword [ebp - 0x80], 0
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 0x10030c07
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x80]
call fcn.10070da0
mov dword [ebp - 4], 1
mov eax, dword [esi + 0x4430]
mov dword [ebp - 0x38], 0xca5160fc
mov dword [ebp - 0x34], 0xd6e251f4
mov dword [ebp - 0x30], 0xc61e63a3
mov word [ebp - 0x2c], 0x27e6
test al, 1
jne 0x10030c99
or eax, 1
mov dword [esi + 0x4430], 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 + 0xaf6], 1
nop dword [eax + eax]
mov al, byte [ebp + ecx - 0x38]
mov byte [esi + ecx + 0xae8], al
add ecx, 1
adc edx, 0
jne 0x10030c88
cmp ecx, 0xe
jb 0x10030c70
push 0x10089180
call fcn.10074356
add esp, 4
mov byte [ebp - 4], 1
lea edi, [esi + 0xae8]
mov ecx, edi
call fcn.1006edb0
mov ecx, edi
mov dword [ebp - 0x50], 0
mov dword [ebp - 0x40], 0
mov dword [ebp - 0x3c], 0xf
mov byte [ebp - 0x50], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10030cc4
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x50]
call fcn.10070da0
push 0x100a8494
lea edx, [ebp - 0x50]
mov byte [ebp - 4], 3
lea ecx, [ebp - 0xb0]
call fcn.10070f40
add esp, 4
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 4
push ecx
push eax
push dword [ebp - 0x16]
lea ecx, [ebp - 0x98]
call fcn.10072980
sub esp, 0x18
mov byte [ebp - 4], 5
mov ecx, esp
mov dword [ebp - 0x18], esp
lea edx, [ebp - 0x98]
push 0x100a88c8
call fcn.10070f40
add esp, 4
mov byte [ebp - 4], 6
movaps xmm0, xmmword [0x10099550]
mov eax, dword [esi + 0x23bc]
mov dword [ebp - 0x58], 0x8d5265bc
mov dword [ebp - 0x54], 0xf9ab5ea3
movups xmmword [ebp - 0x68], xmm0
test al, 1
jne 0x10030d99
or eax, 1
mov dword [esi + 0x23bc], 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 + 0x3f10], 1
mov al, byte [ebp + ecx - 0x68]
mov byte [esi + ecx + 0x3ef8], al
add ecx, 1
adc edx, 0
jne 0x10030d88
cmp ecx, 0x18
jb 0x10030d70
push 0x100891d0
call fcn.10074356
add esp, 4
mov byte [ebp - 4], 6
lea edi, [esi + 0x3ef8]
mov ecx, edi
call fcn.1006ee10
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 0x10030dc4
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10070da0
mov ecx, dword [0x100b0a28]
mov eax, dword [ecx]
mov byte [ebp - 4], 5
call dword [eax + 4]
mov byte [ebp - 4], 4
mov edx, dword [ebp - 0x84]
cmp edx, 0x10
jb 0x10030e23
mov ecx, dword [ebp - 0x98]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10030e19
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10030f0a
push edx
push ecx
call fcn.1007429f
add esp, 8
mov byte [ebp - 4], 3
mov edx, dword [ebp - 0x9c]
mov dword [ebp - 0x88], 0
mov dword [ebp - 0x84], 0xf
mov byte [ebp - 0x98], 0
cmp edx, 0x10
jb 0x10030e7c
mov ecx, dword [ebp - 0xb0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10030e72
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10030f0a
push edx
push ecx
call fcn.1007429f
add esp, 8
mov byte [ebp - 4], 1
mov edx, dword [ebp - 0x3c]
mov dword [ebp - 0xa0], 0
mov dword [ebp - 0x9c], 0xf
mov byte [ebp - 0xb0], 0
cmp edx, 0x10
jb 0x10030ecb
mov ecx, dword [ebp - 0x50]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10030ec1
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10030f0a
push edx
push ecx
call fcn.1007429f
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 0x10030f1a
mov ecx, dword [ebp - 0x80]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10030f10
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x10030f10
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.1007429f
add esp, 8
mov ecx, dword [0x100ab520]
mov edx, 0x100a8880
cmp dword [0x100a8894], 0x10
push 0x100ac6c0
cmovae edx, dword [0x100a8880]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x1003329f
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x104c]
mov dword [ebp - 0x18], 0x6f863643
push 0x100ac6c0
push 0
push 0
test al, 1
jne 0x10030fbc
or eax, 1
mov dword [esi + 0x104c], 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 + 0x360c], 1
mov al, byte [ebp + ecx - 0x18]
mov byte [esi + ecx + 0x3608], al
add ecx, 1
adc edx, 0
jne 0x10030fa8
cmp ecx, 4
jb 0x10030f90
push 0x10089040
call fcn.10074356
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x3608]
mov ecx, edi
call fcn.1006ec30
mov ecx, edi
mov dword [ebp - 0x80], 0
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 0x10030fe7
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x80]
call fcn.10070da0
mov dword [ebp - 4], 9
mov eax, dword [esi + 0x4d04]
mov dword [ebp - 0x38], 0x6cb3c4a
mov dword [ebp - 0x34], 0x7ac83d66
mov dword [ebp - 0x30], 0xa843f15
mov word [ebp - 0x2c], 0x4b74
test al, 1
jne 0x10031079
or eax, 1
mov dword [esi + 0x4d04], 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 + 0x1c26], 1
nop dword [eax + eax]
mov al, byte [ebp + ecx - 0x38]
mov byte [ecx + esi + 0x1c18], al
add ecx, 1
adc edx, 0
jne 0x10031068
cmp ecx, 0xe
jb 0x10031050
push 0x10089090
call fcn.10074356
add esp, 4
mov byte [ebp - 4], 9
lea edi, [esi + 0x1c18]
mov ecx, edi
call fcn.1006ec90
mov ecx, edi
mov dword [ebp - 0x50], 0
mov dword [ebp - 0x40], 0
mov dword [ebp - 0x3c], 0xf
mov byte [ebp - 0x50], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100310a4
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x50]
call fcn.10070da0
push 0x100a8680
lea edx, [ebp - 0x50]
mov byte [ebp - 4], 0xb
lea ecx, [ebp - 0xb0]
call fcn.10070f40
add esp, 4
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 0xc
push ecx
push eax
push dword [ebp - 0x2e]
lea ecx, [ebp - 0x98]
call fcn.10072980
sub esp, 0x18
mov byte [ebp - 4], 0xd
mov ecx, esp
mov dword [ebp - 0x30], esp
lea edx, [ebp - 0x98]
push 0x100a88c8
call fcn.10070f40
add esp, 4
mov byte [ebp - 4], 0xe
movaps xmm0, xmmword [0x10098910]
mov eax, dword [esi + 0x253c]
mov dword [ebp - 0x58], 0x41c8390a
mov dword [ebp - 0x54], 0x55813231
movups xmmword [ebp - 0x68], xmm0
test al, 1
jne 0x10031179
or eax, 1
mov dword [esi + 0x253c], 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 + 0x14cc], 1
mov al, byte [ebp + ecx - 0x68]
mov byte [ecx + esi + 0x14b4], al
add ecx, 1
adc edx, 0
jne 0x10031168
cmp ecx, 0x18
jb 0x10031150
push 0x100890e0
call fcn.10074356
add esp, 4
mov byte [ebp - 4], 0xe
lea edi, [esi + 0x14b4]
mov ecx, edi
call fcn.1006ecf0
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 0x100311a4
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10070da0
mov ecx, dword [0x100b0a28]
mov eax, dword [ecx]
mov byte [ebp - 4], 0xd
call dword [eax + 4]
mov byte [ebp - 4], 0xc
mov edx, dword [ebp - 0x84]
cmp edx, 0x10
jb 0x10031203
mov ecx, dword [ebp - 0x98]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100311f9
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100312ea
push edx
push ecx
call fcn.1007429f
add esp, 8
mov byte [ebp - 4], 0xb
mov edx, dword [ebp - 0x9c]
mov dword [ebp - 0x88], 0
mov dword [ebp - 0x84], 0xf
mov byte [ebp - 0x98], 0
cmp edx, 0x10
jb 0x1003125c
mov ecx, dword [ebp - 0xb0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10031252
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100312ea
push edx
push ecx
call fcn.1007429f
add esp, 8
mov byte [ebp - 4], 9
mov edx, dword [ebp - 0x3c]
mov dword [ebp - 0xa0], 0
mov dword [ebp - 0x9c], 0xf
mov byte [ebp - 0xb0], 0
cmp edx, 0x10
jb 0x100312ab
mov ecx, dword [ebp - 0x50]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100312a1
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100312ea
push edx
push ecx
call fcn.1007429f
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 0x100312fa
mov ecx, dword [ebp - 0x80]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100312f0
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x100312f0
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.1007429f
add esp, 8
mov ecx, dword [0x100ab520]
mov edx, 0x100a8880
cmp dword [0x100a8894], 0x10
push 0x100ac6c0
cmovae edx, dword [0x100a8880]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x1003329f
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x3f7c]
mov dword [ebp - 0x18], 0x33baba37
push 0x100ac6c0
push 0
push 0
test al, 1
jne 0x1003139c
or eax, 1
mov dword [esi + 0x3f7c], 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 + 0x3838], 1
mov al, byte [ebp + ecx - 0x18]
mov byte [ecx + esi + 0x3834], al
add ecx, 1
adc edx, 0
jne 0x10031388
cmp ecx, 4
jb 0x10031370
push 0x10088f50
call fcn.10074356
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x3834]
mov ecx, edi
call fcn.1006eb10
mov ecx, edi
mov dword [ebp - 0x80], 0
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 0x100313c7
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x80]
call fcn.10070da0
mov dword [ebp - 4], 0x11
mov eax, dword [esi + 0x292c]
mov dword [ebp - 0x38], 0x5af7b03e
mov dword [ebp - 0x34], 0xde0acbe8
mov dword [ebp - 0x30], 0x56b8b361
mov word [ebp - 0x2c], 0xbdfa
test al, 1
jne 0x10031459
or eax, 1
mov dword [esi + 0x292c], 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 + 0xb46], 1
nop dword [eax + eax]
mov al, byte [ebp + ecx - 0x38]
mov byte [ecx + esi + 0xb38], al
add ecx, 1
adc edx, 0
jne 0x10031448
cmp ecx, 0xe
jb 0x10031430
push 0x10088fa0
call fcn.10074356
add esp, 4
mov byte [ebp - 4], 0x11
lea edi, [esi + 0xb38]
mov ecx, edi
call fcn.1006eb70
mov ecx, edi
mov dword [ebp - 0x50], 0
mov dword [ebp - 0x40], 0
mov dword [ebp - 0x3c], 0xf
mov byte [ebp - 0x50], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10031484
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x50]
call fcn.10070da0
push 0x100a8868
lea edx, [ebp - 0x50]
mov byte [ebp - 4], 0x13
lea ecx, [ebp - 0xb0]
call fcn.10070f40
add esp, 4
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 0x14
push ecx
push eax
push dword [ebp - 0x2e]
lea ecx, [ebp - 0x98]
call fcn.10072980
sub esp, 0x18
mov byte [ebp - 4], 0x15
mov ecx, esp
mov dword [ebp - 0x30], esp
lea edx, [ebp - 0x98]
push 0x100a88c8
call fcn.10070f40
add esp, 4
mov byte [ebp - 4], 0x16
movaps xmm0, xmmword [0x10099640]
mov eax, dword [esi + 0x3154]
mov dword [ebp - 0x58], 0x1df4b57e
mov dword [ebp - 0x54], 0xf143c4bf
movups xmmword [ebp - 0x68], xmm0
test al, 1
jne 0x10031559
or eax, 1
mov dword [esi + 0x3154], 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 + 0x4ce8], 1
mov al, byte [ebp + ecx - 0x68]
mov byte [ecx + esi + 0x4cd0], al
add ecx, 1
adc edx, 0
jne 0x10031548
cmp ecx, 0x18
jb 0x10031530
push 0x10088ff0
call fcn.10074356
add esp, 4
mov byte [ebp - 4], 0x16
lea edi, [esi + 0x4cd0]
mov ecx, edi
call fcn.1006ebd0
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 0x10031584
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10070da0
mov ecx, dword [0x100b0a28]
mov eax, dword [ecx]
mov byte [ebp - 4], 0x15
call dword [eax + 4]
mov byte [ebp - 4], 0x14
mov edx, dword [ebp - 0x84]
cmp edx, 0x10
jb 0x100315e3
mov ecx, dword [ebp - 0x98]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100315d9
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100316ca
push edx
push ecx
call fcn.1007429f
add esp, 8
mov byte [ebp - 4], 0x13
mov edx, dword [ebp - 0x9c]
mov dword [ebp - 0x88], 0
mov dword [ebp - 0x84], 0xf
mov byte [ebp - 0x98], 0
cmp edx, 0x10
jb 0x1003163c
mov ecx, dword [ebp - 0xb0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10031632
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100316ca
push edx
push ecx
call fcn.1007429f
add esp, 8
mov byte [ebp - 4], 0x11
mov edx, dword [ebp - 0x3c]
mov dword [ebp - 0xa0], 0
mov dword [ebp - 0x9c], 0xf
mov byte [ebp - 0xb0], 0
cmp edx, 0x10
jb 0x1003168b
mov ecx, dword [ebp - 0x50]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10031681
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100316ca
push edx
push ecx
call fcn.1007429f
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 0x100316da
mov ecx, dword [ebp - 0x80]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100316d0
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x100316d0
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.1007429f
add esp, 8
mov ecx, dword [0x100ab520]
mov edx, 0x100a8880
cmp dword [0x100a8894], 0x10
push 0x100ac6c0
cmovae edx, dword [0x100a8880]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x1003329f
mov ecx, 0x100ac6c0
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10031710
sub ecx, edx
cmp ecx, 0x20
jae 0x10031727
cmp ecx, 1
ja 0x1003329f
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x3ce4]
mov dword [ebp - 0x34], 0xab9d1f37
mov dword [ebp - 0x30], 0xb21a5fec
mov byte [ebp - 0x2c], 0x5f
push 0x100ac6c0
test al, 1
jne 0x100317ac
or eax, 1
mov dword [esi + 0x3ce4], 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 + 0x216d], 1
nop dword [eax + eax]
mov al, byte [ebp + ecx - 0x34]
mov byte [ecx + esi + 0x2164], al
add ecx, 1
adc edx, 0
jne 0x10031798
cmp ecx, 9
jb 0x10031780
push 0x10088e10
call fcn.10074356
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x2164]
mov ecx, edi
call fcn.1006e990
sub esp, 0x18
mov ecx, edi
mov edx, esp
mov dword [ebp - 0x30], 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 0x100317e0
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10070da0
mov dword [ebp - 4], 0x19
mov eax, dword [esi + 0x834]
mov dword [ebp - 0x18], 0xdbd40079
test al, 1
jne 0x10031859
or eax, 1
mov dword [esi + 0x834], 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 + 0x734], 1
nop dword [eax]
mov al, byte [ebp + ecx - 0x18]
mov byte [ecx + esi + 0x730], al
add ecx, 1
adc edx, 0
jne 0x10031848
cmp ecx, 4
jb 0x10031830
push 0x10088e60
call fcn.10074356
add esp, 4
mov byte [ebp - 4], 0x19
lea edi, [esi + 0x730]
mov ecx, edi
call fcn.1006e9f0
mov ecx, edi
mov dword [ebp - 0x80], 0
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 0x10031884
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x80]
call fcn.10070da0
mov byte [ebp - 4], 0x1b
mov eax, dword [esi + 0x2fac]
mov dword [ebp - 0x20], 0xb2990a70
mov dword [ebp - 0x1c], 0xb20613b0
mov dword [ebp - 0x18], 0xbed6092f
mov word [ebp - 0x14], 0x65a2
test al, 1
jne 0x1003190b
or eax, 1
mov dword [esi + 0x2fac], 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 + 0x4102], 1
mov al, byte [ebp + ecx - 0x20]
mov byte [ecx + esi + 0x40f4], al
add ecx, 1
adc edx, 0
jne 0x100318fa
cmp ecx, 0xe
jb 0x100318e2
push 0x10088eb0
call fcn.10074356
add esp, 4
mov byte [ebp - 4], 0x1b
lea edi, [esi + 0x40f4]
mov ecx, edi
call fcn.1006ea50
mov ecx, edi
mov dword [ebp - 0x50], 0
mov dword [ebp - 0x40], 0
mov dword [ebp - 0x3c], 0xf
mov byte [ebp - 0x50], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10031936
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x50]
call fcn.10070da0
push 0x100a8494
lea edx, [ebp - 0x50]
mov byte [ebp - 4], 0x1d
lea ecx, [ebp - 0xb0]
call fcn.10070f40
add esp, 4
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 0x1e
push ecx
push eax
push dword [ebp - 0x2e]
lea ecx, [ebp - 0x98]
call fcn.10072980
sub esp, 0x18
mov byte [ebp - 4], 0x1f
mov ecx, esp
mov dword [ebp - 0x18], esp
lea edx, [ebp - 0x98]
push 0x100a88c8
call fcn.10070f40
add esp, 4
mov byte [ebp - 4], 0x20
movaps xmm0, xmmword [0x10099eb0]
mov eax, dword [esi + 0x3d0c]
mov dword [ebp - 0x58], 0xf59a0f30
mov dword [ebp - 0x54], 0x9d4f1ce7
movups xmmword [ebp - 0x68], xmm0
test al, 1
jne 0x10031a0b
or eax, 1
mov dword [esi + 0x3d0c], 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 + 0x495c], 1
mov al, byte [ebp + ecx - 0x68]
mov byte [ecx + esi + 0x4944], al
add ecx, 1
adc edx, 0
jne 0x100319fa
cmp ecx, 0x18
jb 0x100319e2
push 0x10088f00
call fcn.10074356
add esp, 4
mov byte [ebp - 4], 0x20
lea edi, [esi + 0x4944]
mov ecx, edi
call fcn.1006eab0
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 0x10031a36
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10070da0
mov ecx, dword [0x100b0a28]
mov eax, dword [ecx]
mov byte [ebp - 4], 0x25
call dword [eax]
mov byte [ebp - 4], 0x24
mov edx, dword [ebp - 0x84]
cmp edx, 0x10
jb 0x10031a94
mov ecx, dword [ebp - 0x98]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10031a8a
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10031b7b
push edx
push ecx
call fcn.1007429f
add esp, 8
mov byte [ebp - 4], 0x23
mov edx, dword [ebp - 0x9c]
mov dword [ebp - 0x88], 0
mov dword [ebp - 0x84], 0xf
mov byte [ebp - 0x98], 0
cmp edx, 0x10
jb 0x10031aed
mov ecx, dword [ebp - 0xb0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10031ae3
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10031b7b
push edx
push ecx
call fcn.1007429f
add esp, 8
mov byte [ebp - 4], 0x22
mov edx, dword [ebp - 0x3c]
mov dword [ebp - 0xa0], 0
mov dword [ebp - 0x9c], 0xf
mov byte [ebp - 0xb0], 0
cmp edx, 0x10
jb 0x10031b3c
mov ecx, dword [ebp - 0x50]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10031b32
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10031b7b
push edx
push ecx
call fcn.1007429f
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 0x10031b8b
mov ecx, dword [ebp - 0x80]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10031b81
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x10031b81
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.1007429f
add esp, 8
mov ecx, dword [0x100ab520]
mov edx, 0x100a8880
cmp dword [0x100a8894], 0x10
push 0x100ac6c0
cmovae edx, dword [0x100a8880]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x1003329f
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x3a30]
mov dword [ebp - 0x34], 0xbf0f4df9
mov dword [ebp - 0x30], 0x72943fa4
mov byte [ebp - 0x2c], 0x91
push 0x100ac6c0
test al, 1
jne 0x10031c3c
or eax, 1
mov dword [esi + 0x3a30], 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 + 0x378d], 1
nop dword [eax + eax]
mov al, byte [ebp + ecx - 0x34]
mov byte [esi + ecx + 0x3784], al
add ecx, 1
adc edx, 0
jne 0x10031c28
cmp ecx, 9
jb 0x10031c10
push 0x10088cd0
call fcn.10074356
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x3784]
mov ecx, edi
call fcn.1006e810
sub esp, 0x18
mov ecx, edi
mov edx, esp
mov dword [ebp - 0x24], 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 0x10031c70
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10070da0
mov dword [ebp - 4], 0x27
mov eax, dword [esi + 0x33ac]
mov dword [ebp - 0x18], 0xcf4652b7
test al, 1
jne 0x10031ce9
or eax, 1
mov dword [esi + 0x33ac], 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 + 0x39ec], 1
nop dword [eax]
mov al, byte [ebp + ecx - 0x18]
mov byte [esi + ecx + 0x39e8], al
add ecx, 1
adc edx, 0
jne 0x10031cd8
cmp ecx, 4
jb 0x10031cc0
push 0x10088d20
call fcn.10074356
add esp, 4
mov byte [ebp - 4], 0x27
lea edi, [esi + 0x39e8]
mov ecx, edi
call fcn.1006e870
mov ecx, edi
mov dword [ebp - 0x80], 0
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 0x10031d14
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x80]
call fcn.10070da0
mov byte [ebp - 4], 0x29
mov eax, dword [esi + 0x41d4]
mov dword [ebp - 0x20], 0xa60b58be
mov dword [ebp - 0x1c], 0x728873f8
mov dword [ebp - 0x18], 0xaa445be1
mov word [ebp - 0x14], 0x5ea
test al, 1
jne 0x10031d9b
or eax, 1
mov dword [esi + 0x41d4], 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 + 0x263a], 1
mov al, byte [ebp + ecx - 0x20]
mov byte [esi + ecx + 0x262c], al
add ecx, 1
adc edx, 0
jne 0x10031d8a
cmp ecx, 0xe
jb 0x10031d72
push 0x10088d70
call fcn.10074356
add esp, 4
mov byte [ebp - 4], 0x29
lea edi, [esi + 0x262c]
mov ecx, edi
call fcn.1006e8d0
mov ecx, edi
mov dword [ebp - 0x50], 0
mov dword [ebp - 0x40], 0
mov dword [ebp - 0x3c], 0xf
mov byte [ebp - 0x50], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10031dc6
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x50]
call fcn.10070da0
push 0x100a8680
lea edx, [ebp - 0x50]
mov byte [ebp - 4], 0x2b
lea ecx, [ebp - 0xb0]
call fcn.10070f40
add esp, 4
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 0x2c
push ecx
push eax
push dword [ebp - 0x24]
lea ecx, [ebp - 0x98]
call fcn.10072980
sub esp, 0x18
mov byte [ebp - 4], 0x2d
mov ecx, esp
mov dword [ebp - 0x30], esp
lea edx, [ebp - 0x98]
push 0x100a88c8
call fcn.10070f40
add esp, 4
mov byte [ebp - 4], 0x2e
movaps xmm0, xmmword [0x10098860]
mov eax, dword [esi + 0x418]
mov dword [ebp - 0x58], 0xe1085dfe
mov dword [ebp - 0x54], 0x5dc17caf
movups xmmword [ebp - 0x68], xmm0
test al, 1
jne 0x10031e9b
or eax, 1
mov dword [esi + 0x418], 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 + 0x2ff4], 1
mov al, byte [ebp + ecx - 0x68]
mov byte [esi + ecx + 0x2fdc], al
add ecx, 1
adc edx, 0
jne 0x10031e8a
cmp ecx, 0x18
jb 0x10031e72
push 0x10088dc0
call fcn.10074356
add esp, 4
mov byte [ebp - 4], 0x2e
lea edi, [esi + 0x2fdc]
mov ecx, edi
call fcn.1006e930
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 0x10031ec6
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10070da0
mov ecx, dword [0x100b0a28]
mov eax, dword [ecx]
mov byte [ebp - 4], 0x33
call dword [eax]
mov byte [ebp - 4], 0x32
mov edx, dword [ebp - 0x84]
cmp edx, 0x10
jb 0x10031f24
mov ecx, dword [ebp - 0x98]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10031f1a
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003200b
push edx
push ecx
call fcn.1007429f
add esp, 8
mov byte [ebp - 4], 0x31
mov edx, dword [ebp - 0x9c]
mov dword [ebp - 0x88], 0
mov dword [ebp - 0x84], 0xf
mov byte [ebp - 0x98], 0
cmp edx, 0x10
jb 0x10031f7d
mov ecx, dword [ebp - 0xb0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10031f73
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003200b
push edx
push ecx
call fcn.1007429f
add esp, 8
mov byte [ebp - 4], 0x30
mov edx, dword [ebp - 0x3c]
mov dword [ebp - 0xa0], 0
mov dword [ebp - 0x9c], 0xf
mov byte [ebp - 0xb0], 0
cmp edx, 0x10
jb 0x10031fcc
mov ecx, dword [ebp - 0x50]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10031fc2
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003200b
push edx
push ecx
call fcn.1007429f
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 0x1003201b
mov ecx, dword [ebp - 0x80]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10032011
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x10032011
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.1007429f
add esp, 8
mov ecx, dword [0x100ab520]
mov edx, 0x100a8880
cmp dword [0x100a8894], 0x10
push 0x100ac6c0
cmovae edx, dword [0x100a8880]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x1003329f
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x2474]
mov dword [ebp - 0x34], 0x2153a789
mov dword [ebp - 0x30], 0x94a24170
mov byte [ebp - 0x2c], 0xe1
push 0x100ac6c0
test al, 1
jne 0x100320cc
or eax, 1
mov dword [esi + 0x2474], 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 + 0x9f1], 1
nop dword [eax + eax]
mov al, byte [ebp + ecx - 0x34]
mov byte [esi + ecx + 0x9e8], al
add ecx, 1
adc edx, 0
jne 0x100320b8
cmp ecx, 9
jb 0x100320a0
push 0x10088b90
call fcn.10074356
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x9e8]
mov ecx, edi
call fcn.1006e690
sub esp, 0x18
mov ecx, edi
mov edx, esp
mov dword [ebp - 0x24], 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 0x10032100
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10070da0
mov dword [ebp - 4], 0x35
mov eax, dword [esi + 0x1e3c]
mov dword [ebp - 0x18], 0x511ab8c7
test al, 1
jne 0x10032179
or eax, 1
mov dword [esi + 0x1e3c], 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 + 0x4054], 1
nop dword [eax]
mov al, byte [ebp + ecx - 0x18]
mov byte [esi + ecx + 0x4050], al
add ecx, 1
adc edx, 0
jne 0x10032168
cmp ecx, 4
jb 0x10032150
push 0x10088be0
call fcn.10074356
add esp, 4
mov byte [ebp - 4], 0x35
lea edi, [esi + 0x4050]
mov ecx, edi
call fcn.1006e6f0
mov ecx, edi
mov dword [ebp - 0x80], 0
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 0x100321a4
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x80]
call fcn.10070da0
mov byte [ebp - 4], 0x37
mov eax, dword [esi + 0x42f4]
mov dword [ebp - 0x20], 0x3857b2ce
mov dword [ebp - 0x1c], 0x94be0d2c
mov dword [ebp - 0x18], 0x3418b191
mov word [ebp - 0x14], 0x7b3e
test al, 1
jne 0x1003222b
or eax, 1
mov dword [esi + 0x42f4], 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 + 0x3d4a], 1
mov al, byte [ebp + ecx - 0x20]
mov byte [esi + ecx + 0x3d3c], al
add ecx, 1
adc edx, 0
jne 0x1003221a
cmp ecx, 0xe
jb 0x10032202
push 0x10088c30
call fcn.10074356
add esp, 4
mov byte [ebp - 4], 0x37
lea edi, [esi + 0x3d3c]
mov ecx, edi
call fcn.1006e750
mov ecx, edi
mov dword [ebp - 0x50], 0
mov dword [ebp - 0x40], 0
mov dword [ebp - 0x3c], 0xf
mov byte [ebp - 0x50], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10032256
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x50]
call fcn.10070da0
push 0x100a8868
lea edx, [ebp - 0x50]
mov byte [ebp - 4], 0x39
lea ecx, [ebp - 0xb0]
call fcn.10070f40
add esp, 4
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 0x3a
push ecx
push eax
push dword [ebp - 0x24]
lea ecx, [ebp - 0x98]
call fcn.10072980
sub esp, 0x18
mov byte [ebp - 4], 0x3b
mov ecx, esp
mov dword [ebp - 0x30], esp
lea edx, [ebp - 0x98]
push 0x100a88c8
call fcn.10070f40
add esp, 4
mov byte [ebp - 4], 0x3c
movaps xmm0, xmmword [0x10099c40]
mov eax, dword [esi + 0x27c0]
mov dword [ebp - 0x58], 0x7f54b78e
mov dword [ebp - 0x54], 0xbbf7027b
movups xmmword [ebp - 0x68], xmm0
test al, 1
jne 0x1003232b
or eax, 1
mov dword [esi + 0x27c0], 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 + 0x3c70], 1
mov al, byte [ebp + ecx - 0x68]
mov byte [esi + ecx + 0x3c58], al
add ecx, 1
adc edx, 0
jne 0x1003231a
cmp ecx, 0x18
jb 0x10032302
push 0x10088c80
call fcn.10074356
add esp, 4
mov byte [ebp - 4], 0x3c
lea edi, [esi + 0x3c58]
mov ecx, edi
call fcn.1006e7b0
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 0x10032356
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10070da0
mov ecx, dword [0x100b0a28]
mov eax, dword [ecx]
mov byte [ebp - 4], 0x41
call dword [eax]
mov byte [ebp - 4], 0x40
mov edx, dword [ebp - 0x84]
cmp edx, 0x10
jb 0x100323b4
mov ecx, dword [ebp - 0x98]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100323aa
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003249b
push edx
push ecx
call fcn.1007429f
add esp, 8
mov byte [ebp - 4], 0x3f
mov edx, dword [ebp - 0x9c]
mov dword [ebp - 0x88], 0
mov dword [ebp - 0x84], 0xf
mov byte [ebp - 0x98], 0
cmp edx, 0x10
jb 0x1003240d
mov ecx, dword [ebp - 0xb0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10032403
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003249b
push edx
push ecx
call fcn.1007429f
add esp, 8
mov byte [ebp - 4], 0x3e
mov edx, dword [ebp - 0x3c]
mov dword [ebp - 0xa0], 0
mov dword [ebp - 0x9c], 0xf
mov byte [ebp - 0xb0], 0
cmp edx, 0x10
jb 0x1003245c
mov ecx, dword [ebp - 0x50]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10032452
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003249b
push edx
push ecx
call fcn.1007429f
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 0x100324ab
mov ecx, dword [ebp - 0x80]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100324a1
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x100324a1
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.1007429f
add esp, 8
mov ecx, dword [0x100ab520]
mov edx, 0x100a8880
cmp dword [0x100a8894], 0x10
push 0x100ac6c0
cmovae edx, dword [0x100a8880]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x1003329f
mov ecx, 0x100ac6c0
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100324e0
sub ecx, edx
cmp ecx, 0x20
jae 0x100324f7
cmp ecx, 1
ja 0x1003329f
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x1c38]
mov dword [ebp - 0x28], 0x3fc5317f
mov dword [ebp - 0x24], 0x793aa47d
push 0x100ac6c0
test al, 1
jne 0x1003257c
or eax, 1
mov dword [esi + 0x1c38], 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 + 0x5b8], 1
nop dword [eax]
nop dword [eax + eax]
mov al, byte [ebp + ecx - 0x28]
mov byte [esi + ecx + 0x5b0], al
add ecx, 1
adc edx, 0
jne 0x10032568
cmp ecx, 8
jb 0x10032550
push 0x10088a50
call fcn.10074356
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x5b0]
mov ecx, edi
call fcn.1006e510
sub esp, 0x18
mov ecx, edi
mov edx, esp
mov dword [ebp - 0x24], 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 0x100325b0
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10070da0
mov dword [ebp - 4], 0x43
mov eax, dword [esi + 0x860]
mov dword [ebp - 0x18], 0x4f8c2e31
test al, 1
jne 0x10032629
or eax, 1
mov dword [esi + 0x860], 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 + 0x58c], 1
nop dword [eax]
mov al, byte [ebp + ecx - 0x18]
mov byte [esi + ecx + 0x588], al
add ecx, 1
adc edx, 0
jne 0x10032618
cmp ecx, 4
jb 0x10032600
push 0x10088aa0
call fcn.10074356
add esp, 4
mov byte [ebp - 4], 0x43
lea edi, [esi + 0x588]
mov ecx, edi
call fcn.1006e570
mov ecx, edi
mov dword [ebp - 0x80], 0
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 0x10032654
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x80]
call fcn.10070da0
mov byte [ebp - 4], 0x45
mov eax, dword [esi + 0x2508]
mov dword [ebp - 0x20], 0x26c12438
mov dword [ebp - 0x1c], 0x5626fd68
mov dword [ebp - 0x18], 0x2a8e2767
mov word [ebp - 0x14], 0x8b7a
test al, 1
jne 0x100326db
or eax, 1
mov dword [esi + 0x2508], 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 + 0x215e], 1
mov al, byte [ebp + ecx - 0x20]
mov byte [ecx + esi + 0x2150], al
add ecx, 1
adc edx, 0
jne 0x100326ca
cmp ecx, 0xe
jb 0x100326b2
push 0x10088af0
call fcn.10074356
add esp, 4
mov byte [ebp - 4], 0x45
lea edi, [esi + 0x2150]
mov ecx, edi
call fcn.1006e5d0
mov ecx, edi
mov dword [ebp - 0x50], 0
mov dword [ebp - 0x40], 0
mov dword [ebp - 0x3c], 0xf
mov byte [ebp - 0x50], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10032706
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x50]
call fcn.10070da0
push 0x100a8494
lea edx, [ebp - 0x50]
mov byte [ebp - 4], 0x47
lea ecx, [ebp - 0xb0]
call fcn.10070f40
add esp, 4
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 0x48
push ecx
push eax
push dword [ebp - 0x24]
lea ecx, [ebp - 0x98]
call fcn.10072980
sub esp, 0x18
mov byte [ebp - 4], 0x49
mov ecx, esp
mov dword [ebp - 0x30], esp
lea edx, [ebp - 0x98]
push 0x100a88c8
call fcn.10070f40
add esp, 4
mov byte [ebp - 4], 0x4a
movaps xmm0, xmmword [0x10098570]
mov eax, dword [esi + 0x3160]
mov dword [ebp - 0x58], 0x61c22178
mov dword [ebp - 0x54], 0x796ff23f
movups xmmword [ebp - 0x68], xmm0
test al, 1
jne 0x100327db
or eax, 1
mov dword [esi + 0x3160], 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 + 0x2e8], 1
mov al, byte [ebp + ecx - 0x68]
mov byte [ecx + esi + 0x2d0], al
add ecx, 1
adc edx, 0
jne 0x100327ca
cmp ecx, 0x18
jb 0x100327b2
push 0x10088b40
call fcn.10074356
add esp, 4
mov byte [ebp - 4], 0x4a
lea edi, [esi + 0x2d0]
mov ecx, edi
call fcn.1006e630
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 0x10032806
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10070da0
mov ecx, dword [0x100b0a28]
mov eax, dword [ecx]
mov byte [ebp - 4], 0x4f
call dword [eax]
mov byte [ebp - 4], 0x4e
mov edx, dword [ebp - 0x84]
cmp edx, 0x10
jb 0x10032864
mov ecx, dword [ebp - 0x98]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003285a
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003294b
push edx
push ecx
call fcn.1007429f
add esp, 8
mov byte [ebp - 4], 0x4d
mov edx, dword [ebp - 0x9c]
mov dword [ebp - 0x88], 0
mov dword [ebp - 0x84], 0xf
mov byte [ebp - 0x98], 0
cmp edx, 0x10
jb 0x100328bd
mov ecx, dword [ebp - 0xb0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100328b3
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003294b
push edx
push ecx
call fcn.1007429f
add esp, 8
mov byte [ebp - 4], 0x4c
mov edx, dword [ebp - 0x3c]
mov dword [ebp - 0xa0], 0
mov dword [ebp - 0x9c], 0xf
mov byte [ebp - 0xb0], 0
cmp edx, 0x10
jb 0x1003290c
mov ecx, dword [ebp - 0x50]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10032902
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003294b
push edx
push ecx
call fcn.1007429f
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 0x1003295b
mov ecx, dword [ebp - 0x80]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10032951
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x10032951
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.1007429f
add esp, 8
mov ecx, dword [0x100ab520]
mov edx, 0x100a8880
cmp dword [0x100a8894], 0x10
push 0x100ac6c0
cmovae edx, dword [0x100a8880]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x1003329f
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x18cc]
mov dword [ebp - 0x28], 0xb193f90f
mov dword [ebp - 0x24], 0x614a2cc3
push 0x100ac6c0
test al, 1
jne 0x10032a0c
or eax, 1
mov dword [esi + 0x18cc], 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 + 0x1834], 1
nop dword [eax]
nop dword [eax + eax]
mov al, byte [ebp + ecx - 0x28]
mov byte [ecx + esi + 0x182c], al
add ecx, 1
adc edx, 0
jne 0x100329f8
cmp ecx, 8
jb 0x100329e0
push 0x10088910
call fcn.10074356
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x182c]
mov ecx, edi
call fcn.1006e390
sub esp, 0x18
mov ecx, edi
mov edx, esp
mov dword [ebp - 0x24], 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 0x10032a40
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10070da0
mov dword [ebp - 4], 0x51
mov eax, dword [esi + 0xd14]
mov dword [ebp - 0x18], 0xc1dae641
test al, 1
jne 0x10032ab9
or eax, 1
mov dword [esi + 0xd14], 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 + 0x454], 1
nop dword [eax]
mov al, byte [ebp + ecx - 0x18]
mov byte [ecx + esi + 0x450], al
add ecx, 1
adc edx, 0
jne 0x10032aa8
cmp ecx, 4
jb 0x10032a90
push 0x10088960
call fcn.10074356
add esp, 4
mov byte [ebp - 4], 0x51
lea edi, [esi + 0x450]
mov ecx, edi
call fcn.1006e3f0
mov ecx, edi
mov dword [ebp - 0x80], 0
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 0x10032ae4
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x80]
call fcn.10070da0
mov byte [ebp - 4], 0x53
mov eax, dword [esi + 0x384c]
mov dword [ebp - 0x20], 0xa897ec48
mov dword [ebp - 0x1c], 0x4e5675d6
mov dword [ebp - 0x18], 0xa4d8ef17
mov word [ebp - 0x14], 0x3c4
test al, 1
jne 0x10032b6b
or eax, 1
mov dword [esi + 0x384c], 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 + 0x37a], 1
mov al, byte [ebp + ecx - 0x20]
mov byte [ecx + esi + 0x36c], al
add ecx, 1
adc edx, 0
jne 0x10032b5a
cmp ecx, 0xe
jb 0x10032b42
push 0x100889b0
call fcn.10074356
add esp, 4
mov byte [ebp - 4], 0x53
lea edi, [esi + 0x36c]
mov ecx, edi
call fcn.1006e450
mov ecx, edi
mov dword [ebp - 0x50], 0
mov dword [ebp - 0x40], 0
mov dword [ebp - 0x3c], 0xf
mov byte [ebp - 0x50], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10032b96
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x50]
call fcn.10070da0
push 0x100a8680
lea edx, [ebp - 0x50]
mov byte [ebp - 4], 0x55
lea ecx, [ebp - 0xb0]
call fcn.10070f40
add esp, 4
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 0x56
push ecx
push eax
push dword [ebp - 0x24]
lea ecx, [ebp - 0x98]
call fcn.10072980
sub esp, 0x18
mov byte [ebp - 4], 0x57
mov ecx, esp
mov dword [ebp - 0x30], esp
lea edx, [ebp - 0x98]
push 0x100a88c8
call fcn.10070f40
add esp, 4
mov byte [ebp - 4], 0x58
movaps xmm0, xmmword [0x10098470]
mov eax, dword [esi + 0x2e8c]
mov dword [ebp - 0x58], 0xef94e908
mov dword [ebp - 0x54], 0x611f7a81
movups xmmword [ebp - 0x68], xmm0
test al, 1
jne 0x10032c6b
or eax, 1
mov dword [esi + 0x2e8c], 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 + 0x1db8], 1
mov al, byte [ebp + ecx - 0x68]
mov byte [ecx + esi + 0x1da0], al
add ecx, 1
adc edx, 0
jne 0x10032c5a
cmp ecx, 0x18
jb 0x10032c42
push 0x10088a00
call fcn.10074356
add esp, 4
mov byte [ebp - 4], 0x58
lea edi, [esi + 0x1da0]
mov ecx, edi
call fcn.1006e4b0
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 0x10032c96
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10070da0
mov ecx, dword [0x100b0a28]
mov eax, dword [ecx]
mov byte [ebp - 4], 0x5d
call dword [eax]
mov byte [ebp - 4], 0x5c
mov edx, dword [ebp - 0x84]
cmp edx, 0x10
jb 0x10032cf4
mov ecx, dword [ebp - 0x98]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10032cea
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10032ddb
push edx
push ecx
call fcn.1007429f
add esp, 8
mov byte [ebp - 4], 0x5b
mov edx, dword [ebp - 0x9c]
mov dword [ebp - 0x88], 0
mov dword [ebp - 0x84], 0xf
mov byte [ebp - 0x98], 0
cmp edx, 0x10
jb 0x10032d4d
mov ecx, dword [ebp - 0xb0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10032d43
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10032ddb
push edx
push ecx
call fcn.1007429f
add esp, 8
mov byte [ebp - 4], 0x5a
mov edx, dword [ebp - 0x3c]
mov dword [ebp - 0xa0], 0
mov dword [ebp - 0x9c], 0xf
mov byte [ebp - 0xb0], 0
cmp edx, 0x10
jb 0x10032d9c
mov ecx, dword [ebp - 0x50]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10032d92
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10032ddb
push edx
push ecx
call fcn.1007429f
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 0x10032deb
mov ecx, dword [ebp - 0x80]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10032de1
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x10032de1
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.1007429f
add esp, 8
mov ecx, dword [0x100ab520]
mov edx, 0x100a8880
cmp dword [0x100a8894], 0x10
push 0x100ac6c0
cmovae edx, dword [0x100a8880]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x1003329f
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x1508]
mov dword [ebp - 0x28], 0x610f0715
mov dword [ebp - 0x24], 0x6526d605
push 0x100ac6c0
test al, 1
jne 0x10032e9c
or eax, 1
mov dword [esi + 0x1508], 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 + 0x1234], 1
nop dword [eax]
nop dword [eax + eax]
mov al, byte [ebp + ecx - 0x28]
mov byte [esi + ecx + 0x122c], al
add ecx, 1
adc edx, 0
jne 0x10032e88
cmp ecx, 8
jb 0x10032e70
push 0x100887d0
call fcn.10074356
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x122c]
mov ecx, edi
call fcn.1006e210
sub esp, 0x18
mov ecx, edi
mov edx, esp
mov dword [ebp - 0x24], 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 0x10032ed0
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10070da0
mov dword [ebp - 4], 0x5f
mov eax, dword [esi + 0x365c]
mov dword [ebp - 0x18], 0x1146185b
test al, 1
jne 0x10032f49
or eax, 1
mov dword [esi + 0x365c], 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 + 0x320c], 1
nop dword [eax]
mov al, byte [ebp + ecx - 0x18]
mov byte [esi + ecx + 0x3208], al
add ecx, 1
adc edx, 0
jne 0x10032f38
cmp ecx, 4
jb 0x10032f20
push 0x10088820
call fcn.10074356
add esp, 4
mov byte [ebp - 4], 0x5f
lea edi, [esi + 0x3208]
mov ecx, edi
call fcn.1006e270
mov ecx, edi
mov dword [ebp - 0x80], 0
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 0x10032f74
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x80]
call fcn.10070da0
mov byte [ebp - 4], 0x61
mov eax, dword [esi + 0x157c]
mov dword [ebp - 0x20], 0x780b1252
mov dword [ebp - 0x1c], 0x4a3a8f10
mov dword [ebp - 0x18], 0x7444110d
mov word [ebp - 0x14], 0xf902
test al, 1
jne 0x10032ffb
or eax, 1
mov dword [esi + 0x157c], 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 + 0x242a], 1
mov al, byte [ebp + ecx - 0x20]
mov byte [esi + ecx + 0x241c], al
add ecx, 1
adc edx, 0
jne 0x10032fea
cmp ecx, 0xe
jb 0x10032fd2
push 0x10088870
call fcn.10074356
add esp, 4
mov byte [ebp - 4], 0x61
lea edi, [esi + 0x241c]
mov ecx, edi
call fcn.1006e2d0
mov ecx, edi
mov dword [ebp - 0x68], 0
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 0x10033026
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x68]
call fcn.10070da0
push 0x100a8868
lea edx, [ebp - 0x68]
mov byte [ebp - 4], 0x63
lea ecx, [ebp - 0xe0]
call fcn.10070f40
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.10072980
sub esp, 0x18
mov byte [ebp - 4], 0x65
mov ecx, esp
mov dword [ebp - 0x30], esp
lea edx, [ebp - 0xc8]
push 0x100a88c8
call fcn.10070f40
add esp, 4
mov byte [ebp - 4], 0x66
movaps xmm0, xmmword [0x10098410]
mov eax, dword [esi + 0x3d6c]
mov dword [ebp - 0x40], 0x3f081712
mov dword [ebp - 0x3c], 0x65738047
movups xmmword [ebp - 0x50], xmm0
test al, 1
jne 0x100330fb
or eax, 1
mov dword [esi + 0x3d6c], 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 + 0x3df4], 1
mov al, byte [ebp + ecx - 0x50]
mov byte [esi + ecx + 0x3ddc], al
add ecx, 1
adc edx, 0
jne 0x100330ea
cmp ecx, 0x18
jb 0x100330d2
push 0x100888c0
call fcn.10074356
add esp, 4
mov byte [ebp - 4], 0x66
lea esi, [esi + 0x3ddc]
mov ecx, esi
call fcn.1006e330
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 0x10033126
sub ecx, edi
push ecx
push esi
mov ecx, edx
call fcn.10070da0
mov ecx, dword [0x100b0a28]
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 0x10033184
mov ecx, dword [ebp - 0xc8]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003317a
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003326b
push edx
push ecx
call fcn.1007429f
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 0x100331dd
mov ecx, dword [ebp - 0xe0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100331d3
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003326b
push edx
push ecx
call fcn.1007429f
add esp, 8
mov byte [ebp - 4], 0x68
mov edx, dword [ebp - 0x54]
mov dword [ebp - 0xd0], 0
mov dword [ebp - 0xcc], 0xf
mov byte [ebp - 0xe0], 0
cmp edx, 0x10
jb 0x1003322c
mov ecx, dword [ebp - 0x68]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10033222
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003326b
push edx
push ecx
call fcn.1007429f
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x6c]
mov dword [ebp - 0x58], 0
mov dword [ebp - 0x54], 0xf
mov byte [ebp - 0x68], 0
cmp edx, 0x10
jb 0x1003327b
mov ecx, dword [ebp - 0x80]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10033271
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x10033271
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.1007429f
add esp, 8
mov ecx, dword [0x100ab520]
mov edx, 0x100a8880
cmp dword [0x100a8894], 0x10
push 0x100ac6c0
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.10073979
mov esp, ebp
pop ebp
ret