Function at 0x1002f390
Capabilities:
Parse pe header

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x10078c34
mov eax, dword fs:[0]
push eax
sub esp, 0xe4
mov eax, dword [0x100a800c]
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 [0x100a9804]
push 0x100ac838
push 0
push 0
mov esi, dword [eax + ecx*4]
mov dword [ebp - 0x1c], 0xfda88259
mov eax, dword [esi + 0x32f4]
test al, 1
jne 0x1002f43c
or eax, 1
mov dword [esi + 0x32f4], 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 + 0x4b24], 1
nop dword [eax]
mov al, byte [ebp + ecx - 0x1c]
mov byte [esi + ecx + 0x4b20], al
add ecx, 1
adc edx, 0
jne 0x1002f428
cmp ecx, 4
jb 0x1002f410
push 0x10087f50
call fcn.100742f7
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x4b20]
mov ecx, edi
call fcn.1006d920
mov ecx, edi
mov dword [ebp - 0x68], 0
mov dword [ebp - 0x64], 0xf
mov byte [ebp - 0x78], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1002f460
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x78]
call fcn.10071060
mov dword [ebp - 4], 1
movaps xmm0, xmmword [0x1009ae60]
mov eax, dword [esi + 0x1c14]
mov byte [ebp - 0x24], 0x7f
movups xmmword [ebp - 0x34], xmm0
test al, 1
jne 0x1002f4e9
or eax, 1
mov dword [esi + 0x1c14], 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 + 0x32d9], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x34]
mov byte [esi + ecx + 0x32c8], al
add ecx, 1
adc edx, 0
jne 0x1002f4d8
cmp ecx, 0x11
jb 0x1002f4c0
push 0x10087fa0
call fcn.100742f7
add esp, 4
mov byte [ebp - 4], 1
lea edi, [esi + 0x32c8]
mov ecx, edi
call fcn.1006d980
mov ecx, edi
mov dword [ebp - 0x50], 0
mov dword [ebp - 0x4c], 0xf
mov byte [ebp - 0x60], 0
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1002f510
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x60]
call fcn.10071060
push 0x100a8a88
lea edx, [ebp - 0x60]
mov byte [ebp - 4], 3
lea ecx, [ebp - 0xa8]
call fcn.10071200
add esp, 4
lea ecx, [ebp - 0x78]
mov byte [ebp - 4], 4
push ecx
push eax
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x90]
call fcn.10072940
sub esp, 0x18
mov byte [ebp - 4], 5
mov ecx, esp
mov dword [ebp - 0x1c], esp
lea edx, [ebp - 0x90]
push 0x100a8ea8
call fcn.10071200
add esp, 4
mov byte [ebp - 4], 6
movaps xmm0, xmmword [0x1009a790]
mov eax, dword [esi + 0x4504]
mov word [ebp - 0x38], 0xe905
movups xmmword [ebp - 0x48], xmm0
test al, 1
jne 0x1002f5e9
or eax, 1
mov dword [esi + 0x4504], 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 + 0x1982], 1
nop dword [eax]
nop dword [eax + eax]
mov al, byte [ebp + ecx - 0x48]
mov byte [esi + ecx + 0x1970], al
add ecx, 1
adc edx, 0
jne 0x1002f5d8
cmp ecx, 0x12
jb 0x1002f5c0
push 0x10087ff0
call fcn.100742f7
add esp, 4
mov byte [ebp - 4], 6
lea edi, [esi + 0x1970]
mov ecx, edi
call fcn.1006d9e0
sub esp, 0x18
mov ecx, edi
mov edx, esp
lea ebx, [ecx + 1]
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0xf
mov byte [edx], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1002f611
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10071060
mov ecx, dword [0x100ae8e4]
mov eax, dword [ecx]
mov byte [ebp - 4], 5
call dword [eax + 4]
mov byte [ebp - 4], 4
mov edx, dword [ebp - 0x7c]
cmp edx, 0x10
jb 0x1002f66d
mov ecx, dword [ebp - 0x90]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1002f663
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1002f74e
push edx
push ecx
call fcn.10074240
add esp, 8
mov byte [ebp - 4], 3
mov edx, dword [ebp - 0x94]
mov dword [ebp - 0x80], 0
mov dword [ebp - 0x7c], 0xf
mov byte [ebp - 0x90], 0
cmp edx, 0x10
jb 0x1002f6c0
mov ecx, dword [ebp - 0xa8]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1002f6b6
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1002f74e
push edx
push ecx
call fcn.10074240
add esp, 8
mov byte [ebp - 4], 1
mov edx, dword [ebp - 0x4c]
mov dword [ebp - 0x98], 0
mov dword [ebp - 0x94], 0xf
mov byte [ebp - 0xa8], 0
cmp edx, 0x10
jb 0x1002f70f
mov ecx, dword [ebp - 0x60]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1002f705
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1002f74e
push edx
push ecx
call fcn.10074240
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x64]
mov dword [ebp - 0x50], 0
mov dword [ebp - 0x4c], 0xf
mov byte [ebp - 0x60], 0
cmp edx, 0x10
jb 0x1002f75e
mov ecx, dword [ebp - 0x78]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1002f754
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x1002f754
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.10074240
add esp, 8
mov ecx, dword [0x100ab690]
mov edx, 0x100a8e60
cmp dword [0x100a8e74], 0x10
push 0x100ac838
cmovae edx, dword [0x100a8e60]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x100319eb
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x3298]
mov dword [ebp - 0x1c], 0xb9c2be15
push 0x100ac838
push 0
push 0
test al, 1
jne 0x1002f80c
or eax, 1
mov dword [esi + 0x3298], 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 + 0x4a38], 1
nop dword [eax]
nop dword [eax + eax]
mov al, byte [ebp + ecx - 0x1c]
mov byte [esi + ecx + 0x4a34], al
add ecx, 1
adc edx, 0
jne 0x1002f7f8
cmp ecx, 4
jb 0x1002f7e0
push 0x10087e60
call fcn.100742f7
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x4a34]
mov ecx, edi
call fcn.1006d800
mov ecx, edi
mov dword [ebp - 0x80], 0
mov dword [ebp - 0x7c], 0xf
mov byte [ebp - 0x90], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1002f833
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x90]
call fcn.10071060
mov dword [ebp - 4], 9
movaps xmm0, xmmword [0x10099a50]
mov eax, dword [esi + 0x348]
mov byte [ebp - 0x24], 0x33
movups xmmword [ebp - 0x34], xmm0
test al, 1
jne 0x1002f8b9
or eax, 1
mov dword [esi + 0x348], 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 + 0x2c61], 1
nop dword [eax + eax]
mov al, byte [ebp + ecx - 0x34]
mov byte [ecx + esi + 0x2c50], al
add ecx, 1
adc edx, 0
jne 0x1002f8a8
cmp ecx, 0x11
jb 0x1002f890
push 0x10087eb0
call fcn.100742f7
add esp, 4
mov byte [ebp - 4], 9
lea edi, [esi + 0x2c50]
mov ecx, edi
call fcn.1006d860
mov ecx, edi
mov dword [ebp - 0x50], 0
mov dword [ebp - 0x4c], 0xf
mov byte [ebp - 0x60], 0
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1002f8e0
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x60]
call fcn.10071060
push 0x100a8c78
lea edx, [ebp - 0x60]
mov byte [ebp - 4], 0xb
lea ecx, [ebp - 0xa8]
call fcn.10071200
add esp, 4
lea ecx, [ebp - 0x90]
mov byte [ebp - 4], 0xc
push ecx
push eax
push dword [ebp - 0x27]
lea ecx, [ebp - 0x78]
call fcn.10072940
sub esp, 0x18
mov byte [ebp - 4], 0xd
mov ecx, esp
mov dword [ebp - 0x28], esp
lea edx, [ebp - 0x78]
push 0x100a8ea8
call fcn.10071200
add esp, 4
mov byte [ebp - 4], 0xe
movaps xmm0, xmmword [0x10099320]
mov eax, dword [esi + 0x377c]
mov word [ebp - 0x38], 0xd549
movups xmmword [ebp - 0x48], xmm0
test al, 1
jne 0x1002f9aa
or eax, 1
mov dword [esi + 0x377c], 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 + 0x2c36], 1
mov al, byte [ebp + ecx - 0x48]
mov byte [ecx + esi + 0x2c24], al
add ecx, 1
adc edx, 0
jne 0x1002f999
cmp ecx, 0x12
jb 0x1002f981
push 0x10087f00
call fcn.100742f7
add esp, 4
mov byte [ebp - 4], 0xe
lea edi, [esi + 0x2c24]
mov ecx, edi
call fcn.1006d8c0
sub esp, 0x18
mov ecx, edi
mov edx, esp
lea ebx, [ecx + 1]
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0xf
mov byte [edx], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1002f9d2
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10071060
mov ecx, dword [0x100ae8e4]
mov eax, dword [ecx]
mov byte [ebp - 4], 0xd
call dword [eax + 4]
mov byte [ebp - 4], 0xc
mov edx, dword [ebp - 0x64]
cmp edx, 0x10
jb 0x1002fa2b
mov ecx, dword [ebp - 0x78]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1002fa21
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1002fb0c
push edx
push ecx
call fcn.10074240
add esp, 8
mov byte [ebp - 4], 0xb
mov edx, dword [ebp - 0x94]
mov dword [ebp - 0x68], 0
mov dword [ebp - 0x64], 0xf
mov byte [ebp - 0x78], 0
cmp edx, 0x10
jb 0x1002fa7b
mov ecx, dword [ebp - 0xa8]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1002fa71
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1002fb0c
push edx
push ecx
call fcn.10074240
add esp, 8
mov byte [ebp - 4], 9
mov edx, dword [ebp - 0x4c]
mov dword [ebp - 0x98], 0
mov dword [ebp - 0x94], 0xf
mov byte [ebp - 0xa8], 0
cmp edx, 0x10
jb 0x1002faca
mov ecx, dword [ebp - 0x60]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1002fac0
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1002fb0c
push edx
push ecx
call fcn.10074240
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x7c]
mov dword [ebp - 0x50], 0
mov dword [ebp - 0x4c], 0xf
mov byte [ebp - 0x60], 0
cmp edx, 0x10
jb 0x1002fb1c
mov ecx, dword [ebp - 0x90]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1002fb12
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x1002fb12
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.10074240
add esp, 8
mov ecx, dword [0x100ab690]
mov edx, 0x100a8e60
cmp dword [0x100a8e74], 0x10
push 0x100ac838
cmovae edx, dword [0x100a8e60]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x100319eb
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x3714]
mov dword [ebp - 0x1c], 0x771244a1
push 0x100ac838
push 0
push 0
test al, 1
jne 0x1002fbbe
or eax, 1
mov dword [esi + 0x3714], 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 + 0x396c], 1
mov al, byte [ebp + ecx - 0x1c]
mov byte [ecx + esi + 0x3968], al
add ecx, 1
adc edx, 0
jne 0x1002fbaa
cmp ecx, 4
jb 0x1002fb92
push 0x10087d70
call fcn.100742f7
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x3968]
mov ecx, edi
call fcn.1006d6e0
mov ecx, edi
mov dword [ebp - 0x80], 0
mov dword [ebp - 0x7c], 0xf
mov byte [ebp - 0x90], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1002fbe5
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x90]
call fcn.10071060
mov dword [ebp - 4], 0x11
movaps xmm0, xmmword [0x1009a710]
mov eax, dword [esi + 0x2254]
mov byte [ebp - 0x24], 0x87
movups xmmword [ebp - 0x34], xmm0
test al, 1
jne 0x1002fc69
or eax, 1
mov dword [esi + 0x2254], 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 + 0x32d], 1
nop dword [eax]
mov al, byte [ebp + ecx - 0x34]
mov byte [ecx + esi + 0x31c], al
add ecx, 1
adc edx, 0
jne 0x1002fc58
cmp ecx, 0x11
jb 0x1002fc40
push 0x10087dc0
call fcn.100742f7
add esp, 4
mov byte [ebp - 4], 0x11
lea edi, [esi + 0x31c]
mov ecx, edi
call fcn.1006d740
mov ecx, edi
mov dword [ebp - 0x50], 0
mov dword [ebp - 0x4c], 0xf
mov byte [ebp - 0x60], 0
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1002fc90
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x60]
call fcn.10071060
push 0x100a8e48
lea edx, [ebp - 0x60]
mov byte [ebp - 4], 0x13
lea ecx, [ebp - 0xa8]
call fcn.10071200
add esp, 4
lea ecx, [ebp - 0x90]
mov byte [ebp - 4], 0x14
push ecx
push eax
push dword [ebp - 0x27]
lea ecx, [ebp - 0x78]
call fcn.10072940
sub esp, 0x18
mov byte [ebp - 4], 0x15
mov ecx, esp
mov dword [ebp - 0x28], esp
lea edx, [ebp - 0x78]
push 0x100a8ea8
call fcn.10071200
add esp, 4
mov byte [ebp - 4], 0x16
movaps xmm0, xmmword [0x1009ad00]
mov eax, dword [esi + 0x4350]
mov word [ebp - 0x38], 0x2ffd
movups xmmword [ebp - 0x48], xmm0
test al, 1
jne 0x1002fd5a
or eax, 1
mov dword [esi + 0x4350], 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 + 0x2522], 1
mov al, byte [ebp + ecx - 0x48]
mov byte [ecx + esi + 0x2510], al
add ecx, 1
adc edx, 0
jne 0x1002fd49
cmp ecx, 0x12
jb 0x1002fd31
push 0x10087e10
call fcn.100742f7
add esp, 4
mov byte [ebp - 4], 0x16
lea edi, [esi + 0x2510]
mov ecx, edi
call fcn.1006d7a0
sub esp, 0x18
mov ecx, edi
mov edx, esp
lea ebx, [ecx + 1]
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0xf
mov byte [edx], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1002fd82
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10071060
mov ecx, dword [0x100ae8e4]
mov eax, dword [ecx]
mov byte [ebp - 4], 0x15
call dword [eax + 4]
mov byte [ebp - 4], 0x14
mov edx, dword [ebp - 0x64]
cmp edx, 0x10
jb 0x1002fddb
mov ecx, dword [ebp - 0x78]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1002fdd1
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1002febc
push edx
push ecx
call fcn.10074240
add esp, 8
mov byte [ebp - 4], 0x13
mov edx, dword [ebp - 0x94]
mov dword [ebp - 0x68], 0
mov dword [ebp - 0x64], 0xf
mov byte [ebp - 0x78], 0
cmp edx, 0x10
jb 0x1002fe2b
mov ecx, dword [ebp - 0xa8]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1002fe21
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1002febc
push edx
push ecx
call fcn.10074240
add esp, 8
mov byte [ebp - 4], 0x11
mov edx, dword [ebp - 0x4c]
mov dword [ebp - 0x98], 0
mov dword [ebp - 0x94], 0xf
mov byte [ebp - 0xa8], 0
cmp edx, 0x10
jb 0x1002fe7a
mov ecx, dword [ebp - 0x60]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1002fe70
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1002febc
push edx
push ecx
call fcn.10074240
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x7c]
mov dword [ebp - 0x50], 0
mov dword [ebp - 0x4c], 0xf
mov byte [ebp - 0x60], 0
cmp edx, 0x10
jb 0x1002fecc
mov ecx, dword [ebp - 0x90]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1002fec2
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x1002fec2
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.10074240
add esp, 8
mov ecx, dword [0x100ab690]
mov edx, 0x100a8e60
cmp dword [0x100a8e74], 0x10
push 0x100ac838
cmovae edx, dword [0x100a8e60]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x100319eb
mov ecx, 0x100ac838
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1002ff00
sub ecx, edx
cmp ecx, 0x20
jae 0x1002ff17
cmp ecx, 1
ja 0x100319eb
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x293c]
mov dword [ebp - 0x2c], 0x1755dd9b
mov dword [ebp - 0x28], 0x8a44216a
mov byte [ebp - 0x24], 0xf3
push 0x100ac838
test al, 1
jne 0x1002ff9c
or eax, 1
mov dword [esi + 0x293c], 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 + 0x3bf9], 1
nop dword [eax + eax]
mov al, byte [ebp + ecx - 0x2c]
mov byte [ecx + esi + 0x3bf0], al
add ecx, 1
adc edx, 0
jne 0x1002ff88
cmp ecx, 9
jb 0x1002ff70
push 0x10087c30
call fcn.100742f7
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x3bf0]
mov ecx, edi
call fcn.1006d560
sub esp, 0x18
mov ecx, edi
mov edx, esp
mov dword [ebp - 0x28], esp
lea ebx, [ecx + 1]
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0xf
mov byte [edx], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1002ffc7
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10071060
mov dword [ebp - 4], 0x19
mov eax, dword [esi + 0x3c58]
mov dword [ebp - 0x1c], 0x671cc2d5
test al, 1
jne 0x10030049
or eax, 1
mov dword [esi + 0x3c58], 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 + 0x16dc], 1
nop dword [eax]
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x1c]
mov byte [ecx + esi + 0x16d8], al
add ecx, 1
adc edx, 0
jne 0x10030038
cmp ecx, 4
jb 0x10030020
push 0x10087c80
call fcn.100742f7
add esp, 4
mov byte [ebp - 4], 0x19
lea edi, [esi + 0x16d8]
mov ecx, edi
call fcn.1006d5c0
mov ecx, edi
mov dword [ebp - 0x80], 0
mov dword [ebp - 0x7c], 0xf
mov byte [ebp - 0x90], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10030070
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x90]
call fcn.10071060
mov byte [ebp - 4], 0x1b
movaps xmm0, xmmword [0x1009a4c0]
mov eax, dword [esi + 0x3348]
mov byte [ebp - 0x38], 0xf3
movups xmmword [ebp - 0x48], xmm0
test al, 1
jne 0x100300f9
or eax, 1
mov dword [esi + 0x3348], 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 + 0x26d5], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x48]
mov byte [esi + ecx + 0x26c4], al
add ecx, 1
adc edx, 0
jne 0x100300e8
cmp ecx, 0x11
jb 0x100300d0
push 0x10087cd0
call fcn.100742f7
add esp, 4
mov byte [ebp - 4], 0x1b
lea edi, [esi + 0x26c4]
mov ecx, edi
call fcn.1006d620
mov ecx, edi
mov dword [ebp - 0x50], 0
mov dword [ebp - 0x4c], 0xf
mov byte [ebp - 0x60], 0
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10030120
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x60]
call fcn.10071060
push 0x100a8a88
lea edx, [ebp - 0x60]
mov byte [ebp - 4], 0x1d
lea ecx, [ebp - 0xa8]
call fcn.10071200
add esp, 4
lea ecx, [ebp - 0x90]
mov byte [ebp - 4], 0x1e
push ecx
push eax
push dword [ebp - 0x27]
lea ecx, [ebp - 0x78]
call fcn.10072940
sub esp, 0x18
mov byte [ebp - 4], 0x1f
mov ecx, esp
mov dword [ebp - 0x1c], esp
lea edx, [ebp - 0x78]
push 0x100a8ea8
call fcn.10071200
add esp, 4
mov byte [ebp - 4], 0x20
movaps xmm0, xmmword [0x1009ab90]
mov eax, dword [esi + 0xb40]
mov word [ebp - 0x38], 0xa989
movups xmmword [ebp - 0x48], xmm0
test al, 1
jne 0x100301ea
or eax, 1
mov dword [esi + 0xb40], 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 + 0x290a], 1
mov al, byte [ebp + ecx - 0x48]
mov byte [esi + ecx + 0x28f8], al
add ecx, 1
adc edx, 0
jne 0x100301d9
cmp ecx, 0x12
jb 0x100301c1
push 0x10087d20
call fcn.100742f7
add esp, 4
mov byte [ebp - 4], 0x20
lea edi, [esi + 0x28f8]
mov ecx, edi
call fcn.1006d680
sub esp, 0x18
mov ecx, edi
mov edx, esp
lea ebx, [ecx + 1]
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0xf
mov byte [edx], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10030212
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10071060
mov ecx, dword [0x100ae8e4]
mov eax, dword [ecx]
mov byte [ebp - 4], 0x25
call dword [eax]
mov byte [ebp - 4], 0x24
mov edx, dword [ebp - 0x64]
cmp edx, 0x10
jb 0x1003026a
mov ecx, dword [ebp - 0x78]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10030260
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003034b
push edx
push ecx
call fcn.10074240
add esp, 8
mov byte [ebp - 4], 0x23
mov edx, dword [ebp - 0x94]
mov dword [ebp - 0x68], 0
mov dword [ebp - 0x64], 0xf
mov byte [ebp - 0x78], 0
cmp edx, 0x10
jb 0x100302ba
mov ecx, dword [ebp - 0xa8]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100302b0
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003034b
push edx
push ecx
call fcn.10074240
add esp, 8
mov byte [ebp - 4], 0x22
mov edx, dword [ebp - 0x4c]
mov dword [ebp - 0x98], 0
mov dword [ebp - 0x94], 0xf
mov byte [ebp - 0xa8], 0
cmp edx, 0x10
jb 0x10030309
mov ecx, dword [ebp - 0x60]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100302ff
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003034b
push edx
push ecx
call fcn.10074240
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x7c]
mov dword [ebp - 0x50], 0
mov dword [ebp - 0x4c], 0xf
mov byte [ebp - 0x60], 0
cmp edx, 0x10
jb 0x1003035b
mov ecx, dword [ebp - 0x90]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10030351
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x10030351
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.10074240
add esp, 8
mov ecx, dword [0x100ab690]
mov edx, 0x100a8e60
cmp dword [0x100a8e74], 0x10
push 0x100ac838
cmovae edx, dword [0x100a8e60]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x100319eb
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x44c8]
mov dword [ebp - 0x2c], 0xe1ebeb31
mov dword [ebp - 0x28], 0x76107b62
mov byte [ebp - 0x24], 0x59
push 0x100ac838
test al, 1
jne 0x1003040c
or eax, 1
mov dword [esi + 0x44c8], 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 + 0x1f7d], 1
nop dword [eax + eax]
mov al, byte [ebp + ecx - 0x2c]
mov byte [esi + ecx + 0x1f74], al
add ecx, 1
adc edx, 0
jne 0x100303f8
cmp ecx, 9
jb 0x100303e0
push 0x10087af0
call fcn.100742f7
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x1f74]
mov ecx, edi
call fcn.1006d3e0
sub esp, 0x18
mov ecx, edi
mov edx, esp
mov dword [ebp - 0x14], esp
lea ebx, [ecx + 1]
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0xf
mov byte [edx], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10030437
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10071060
mov dword [ebp - 4], 0x27
mov eax, dword [esi + 0x1ae4]
mov dword [ebp - 0x1c], 0x91a2f47f
test al, 1
jne 0x100304b9
or eax, 1
mov dword [esi + 0x1ae4], eax
mov byte [ebp - 4], 0x28
xorps xmm0, xmm0
movlpd qword [ebp - 0x2c], xmm0
mov edx, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x2c]
mov byte [esi + 0x1c78], 1
nop dword [eax]
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x1c]
mov byte [ecx + esi + 0x1c74], al
add ecx, 1
adc edx, 0
jne 0x100304a8
cmp ecx, 4
jb 0x10030490
push 0x10087b40
call fcn.100742f7
add esp, 4
mov byte [ebp - 4], 0x27
lea edi, [esi + 0x1c74]
mov ecx, edi
call fcn.1006d440
mov ecx, edi
mov dword [ebp - 0x80], 0
mov dword [ebp - 0x7c], 0xf
mov byte [ebp - 0x90], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100304e0
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x90]
call fcn.10071060
mov byte [ebp - 4], 0x29
movaps xmm0, xmmword [0x10099e40]
mov eax, dword [esi + 0x654]
mov byte [ebp - 0x38], 0x59
movups xmmword [ebp - 0x48], xmm0
test al, 1
jne 0x10030569
or eax, 1
mov dword [esi + 0x654], eax
mov byte [ebp - 4], 0x2a
xorps xmm0, xmm0
movlpd qword [ebp - 0x2c], xmm0
mov edx, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x2c]
mov byte [esi + 0x1889], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x48]
mov byte [esi + ecx + 0x1878], al
add ecx, 1
adc edx, 0
jne 0x10030558
cmp ecx, 0x11
jb 0x10030540
push 0x10087b90
call fcn.100742f7
add esp, 4
mov byte [ebp - 4], 0x29
lea edi, [esi + 0x1878]
mov ecx, edi
call fcn.1006d4a0
mov ecx, edi
mov dword [ebp - 0x50], 0
mov dword [ebp - 0x4c], 0xf
mov byte [ebp - 0x60], 0
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10030590
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x60]
call fcn.10071060
push 0x100a8c78
lea edx, [ebp - 0x60]
mov byte [ebp - 4], 0x2b
lea ecx, [ebp - 0xa8]
call fcn.10071200
add esp, 4
lea ecx, [ebp - 0x90]
mov byte [ebp - 4], 0x2c
push ecx
push eax
push dword [ebp - 0x14]
lea ecx, [ebp - 0x78]
call fcn.10072940
sub esp, 0x18
mov byte [ebp - 4], 0x2d
mov ecx, esp
mov dword [ebp - 0x28], esp
lea edx, [ebp - 0x78]
push 0x100a8ea8
call fcn.10071200
add esp, 4
mov byte [ebp - 4], 0x2e
movaps xmm0, xmmword [0x10099590]
mov eax, dword [esi + 0x4d84]
mov word [ebp - 0x38], 0x9f23
movups xmmword [ebp - 0x48], xmm0
test al, 1
jne 0x1003065a
or eax, 1
mov dword [esi + 0x4d84], eax
mov byte [ebp - 4], 0x2f
xorps xmm0, xmm0
movlpd qword [ebp - 0x20], xmm0
mov edx, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x20]
mov byte [esi + 0x1682], 1
mov al, byte [ebp + ecx - 0x48]
mov byte [esi + ecx + 0x1670], al
add ecx, 1
adc edx, 0
jne 0x10030649
cmp ecx, 0x12
jb 0x10030631
push 0x10087be0
call fcn.100742f7
add esp, 4
mov byte [ebp - 4], 0x2e
lea edi, [esi + 0x1670]
mov ecx, edi
call fcn.1006d500
sub esp, 0x18
mov ecx, edi
mov edx, esp
lea ebx, [ecx + 1]
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0xf
mov byte [edx], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10030682
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10071060
mov ecx, dword [0x100ae8e4]
mov eax, dword [ecx]
mov byte [ebp - 4], 0x33
call dword [eax]
mov byte [ebp - 4], 0x32
mov edx, dword [ebp - 0x64]
cmp edx, 0x10
jb 0x100306da
mov ecx, dword [ebp - 0x78]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100306d0
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100307bb
push edx
push ecx
call fcn.10074240
add esp, 8
mov byte [ebp - 4], 0x31
mov edx, dword [ebp - 0x94]
mov dword [ebp - 0x68], 0
mov dword [ebp - 0x64], 0xf
mov byte [ebp - 0x78], 0
cmp edx, 0x10
jb 0x1003072a
mov ecx, dword [ebp - 0xa8]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10030720
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100307bb
push edx
push ecx
call fcn.10074240
add esp, 8
mov byte [ebp - 4], 0x30
mov edx, dword [ebp - 0x4c]
mov dword [ebp - 0x98], 0
mov dword [ebp - 0x94], 0xf
mov byte [ebp - 0xa8], 0
cmp edx, 0x10
jb 0x10030779
mov ecx, dword [ebp - 0x60]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003076f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100307bb
push edx
push ecx
call fcn.10074240
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x7c]
mov dword [ebp - 0x50], 0
mov dword [ebp - 0x4c], 0xf
mov byte [ebp - 0x60], 0
cmp edx, 0x10
jb 0x100307cb
mov ecx, dword [ebp - 0x90]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100307c1
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x100307c1
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.10074240
add esp, 8
mov ecx, dword [0x100ab690]
mov edx, 0x100a8e60
cmp dword [0x100a8e74], 0x10
push 0x100ac838
cmovae edx, dword [0x100a8e60]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x100319eb
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0xd30]
mov dword [ebp - 0x2c], 0xf9bd0deb
mov dword [ebp - 0x28], 0x5ab45f80
mov byte [ebp - 0x24], 0x83
push 0x100ac838
test al, 1
jne 0x1003087c
or eax, 1
mov dword [esi + 0xd30], 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 + 0x13b9], 1
nop dword [eax + eax]
mov al, byte [ebp + ecx - 0x2c]
mov byte [esi + ecx + 0x13b0], al
add ecx, 1
adc edx, 0
jne 0x10030868
cmp ecx, 9
jb 0x10030850
push 0x100879b0
call fcn.100742f7
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x13b0]
mov ecx, edi
call fcn.1006d260
sub esp, 0x18
mov ecx, edi
mov edx, esp
mov dword [ebp - 0x14], esp
lea ebx, [ecx + 1]
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0xf
mov byte [edx], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100308a7
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10071060
mov dword [ebp - 4], 0x35
mov eax, dword [esi + 0x2a24]
mov dword [ebp - 0x1c], 0x89f412a5
test al, 1
jne 0x10030929
or eax, 1
mov dword [esi + 0x2a24], eax
mov byte [ebp - 4], 0x36
xorps xmm0, xmm0
movlpd qword [ebp - 0x2c], xmm0
mov edx, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x2c]
mov byte [esi + 0x31f4], 1
nop dword [eax]
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x1c]
mov byte [esi + ecx + 0x31f0], al
add ecx, 1
adc edx, 0
jne 0x10030918
cmp ecx, 4
jb 0x10030900
push 0x10087a00
call fcn.100742f7
add esp, 4
mov byte [ebp - 4], 0x35
lea edi, [esi + 0x31f0]
mov ecx, edi
call fcn.1006d2c0
mov ecx, edi
mov dword [ebp - 0x80], 0
mov dword [ebp - 0x7c], 0xf
mov byte [ebp - 0x90], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10030950
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x90]
call fcn.10071060
mov byte [ebp - 4], 0x37
movaps xmm0, xmmword [0x10099ab0]
mov eax, dword [esi + 0x3980]
mov byte [ebp - 0x38], 0x83
movups xmmword [ebp - 0x48], xmm0
test al, 1
jne 0x100309d9
or eax, 1
mov dword [esi + 0x3980], eax
mov byte [ebp - 4], 0x38
xorps xmm0, xmm0
movlpd qword [ebp - 0x2c], xmm0
mov edx, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x2c]
mov byte [esi + 0x23f1], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x48]
mov byte [esi + ecx + 0x23e0], al
add ecx, 1
adc edx, 0
jne 0x100309c8
cmp ecx, 0x11
jb 0x100309b0
push 0x10087a50
call fcn.100742f7
add esp, 4
mov byte [ebp - 4], 0x37
lea edi, [esi + 0x23e0]
mov ecx, edi
call fcn.1006d320
mov ecx, edi
mov dword [ebp - 0x50], 0
mov dword [ebp - 0x4c], 0xf
mov byte [ebp - 0x60], 0
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10030a00
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x60]
call fcn.10071060
push 0x100a8e48
lea edx, [ebp - 0x60]
mov byte [ebp - 4], 0x39
lea ecx, [ebp - 0xa8]
call fcn.10071200
add esp, 4
lea ecx, [ebp - 0x90]
mov byte [ebp - 4], 0x3a
push ecx
push eax
push dword [ebp - 0x14]
lea ecx, [ebp - 0x78]
call fcn.10072940
sub esp, 0x18
mov byte [ebp - 4], 0x3b
mov ecx, esp
mov dword [ebp - 0x28], esp
lea edx, [ebp - 0x78]
push 0x100a8ea8
call fcn.10071200
add esp, 4
mov byte [ebp - 4], 0x3c
movaps xmm0, xmmword [0x10099410]
mov eax, dword [esi + 0x2adc]
mov word [ebp - 0x38], 0x79f9
movups xmmword [ebp - 0x48], xmm0
test al, 1
jne 0x10030aca
or eax, 1
mov dword [esi + 0x2adc], eax
mov byte [ebp - 4], 0x3d
xorps xmm0, xmm0
movlpd qword [ebp - 0x20], xmm0
mov edx, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x20]
mov byte [esi + 0x2e8e], 1
mov al, byte [ebp + ecx - 0x48]
mov byte [esi + ecx + 0x2e7c], al
add ecx, 1
adc edx, 0
jne 0x10030ab9
cmp ecx, 0x12
jb 0x10030aa1
push 0x10087aa0
call fcn.100742f7
add esp, 4
mov byte [ebp - 4], 0x3c
lea edi, [esi + 0x2e7c]
mov ecx, edi
call fcn.1006d380
sub esp, 0x18
mov ecx, edi
mov edx, esp
lea ebx, [ecx + 1]
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0xf
mov byte [edx], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10030af2
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10071060
mov ecx, dword [0x100ae8e4]
mov eax, dword [ecx]
mov byte [ebp - 4], 0x41
call dword [eax]
mov byte [ebp - 4], 0x40
mov edx, dword [ebp - 0x64]
cmp edx, 0x10
jb 0x10030b4a
mov ecx, dword [ebp - 0x78]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10030b40
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10030c2b
push edx
push ecx
call fcn.10074240
add esp, 8
mov byte [ebp - 4], 0x3f
mov edx, dword [ebp - 0x94]
mov dword [ebp - 0x68], 0
mov dword [ebp - 0x64], 0xf
mov byte [ebp - 0x78], 0
cmp edx, 0x10
jb 0x10030b9a
mov ecx, dword [ebp - 0xa8]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10030b90
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10030c2b
push edx
push ecx
call fcn.10074240
add esp, 8
mov byte [ebp - 4], 0x3e
mov edx, dword [ebp - 0x4c]
mov dword [ebp - 0x98], 0
mov dword [ebp - 0x94], 0xf
mov byte [ebp - 0xa8], 0
cmp edx, 0x10
jb 0x10030be9
mov ecx, dword [ebp - 0x60]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10030bdf
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10030c2b
push edx
push ecx
call fcn.10074240
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x7c]
mov dword [ebp - 0x50], 0
mov dword [ebp - 0x4c], 0xf
mov byte [ebp - 0x60], 0
cmp edx, 0x10
jb 0x10030c3b
mov ecx, dword [ebp - 0x90]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10030c31
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x10030c31
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.10074240
add esp, 8
mov ecx, dword [0x100ab690]
mov edx, 0x100a8e60
cmp dword [0x100a8e74], 0x10
push 0x100ac838
cmovae edx, dword [0x100a8e60]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x100319eb
mov ecx, 0x100ac838
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10030c70
sub ecx, edx
cmp ecx, 0x20
jae 0x10030c87
cmp ecx, 1
ja 0x100319eb
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0xb4c]
mov dword [ebp - 0x18], 0x8d7fc7e1
mov dword [ebp - 0x14], 0x27b210cd
push 0x100ac838
test al, 1
jne 0x10030d0c
or eax, 1
mov dword [esi + 0xb4c], eax
mov dword [ebp - 4], 0x42
xorps xmm0, xmm0
movlpd qword [ebp - 0x2c], xmm0
mov edx, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x2c]
mov byte [esi + 0x3210], 1
nop dword [eax]
nop dword [eax + eax]
mov al, byte [ebp + ecx - 0x18]
mov byte [esi + ecx + 0x3208], al
add ecx, 1
adc edx, 0
jne 0x10030cf8
cmp ecx, 8
jb 0x10030ce0
push 0x10087870
call fcn.100742f7
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x3208]
mov ecx, edi
call fcn.1006d0e0
sub esp, 0x18
mov ecx, edi
mov edx, esp
mov dword [ebp - 0x14], esp
lea ebx, [ecx + 1]
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0xf
mov byte [edx], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10030d37
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10071060
mov dword [ebp - 4], 0x43
mov eax, dword [esi + 0x25f8]
mov dword [ebp - 0x1c], 0xfd36d8af
test al, 1
jne 0x10030db9
or eax, 1
mov dword [esi + 0x25f8], eax
mov byte [ebp - 4], 0x44
xorps xmm0, xmm0
movlpd qword [ebp - 0x2c], xmm0
mov edx, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x2c]
mov byte [esi + 0x1ea8], 1
nop dword [eax]
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x1c]
mov byte [esi + ecx + 0x1ea4], al
add ecx, 1
adc edx, 0
jne 0x10030da8
cmp ecx, 4
jb 0x10030d90
push 0x100878c0
call fcn.100742f7
add esp, 4
mov byte [ebp - 4], 0x43
lea edi, [esi + 0x1ea4]
mov ecx, edi
call fcn.1006d140
mov ecx, edi
mov dword [ebp - 0x80], 0
mov dword [ebp - 0x7c], 0xf
mov byte [ebp - 0x90], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10030de0
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x90]
call fcn.10071060
mov byte [ebp - 4], 0x45
movaps xmm0, xmmword [0x10099520]
mov eax, dword [esi + 0x2294]
mov byte [ebp - 0x38], 0x89
movups xmmword [ebp - 0x48], xmm0
test al, 1
jne 0x10030e69
or eax, 1
mov dword [esi + 0x2294], eax
mov byte [ebp - 4], 0x46
xorps xmm0, xmm0
movlpd qword [ebp - 0x2c], xmm0
mov edx, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x2c]
mov byte [esi + 0xaad], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x48]
mov byte [ecx + esi + 0xa9c], al
add ecx, 1
adc edx, 0
jne 0x10030e58
cmp ecx, 0x11
jb 0x10030e40
push 0x10087910
call fcn.100742f7
add esp, 4
mov byte [ebp - 4], 0x45
lea edi, [esi + 0xa9c]
mov ecx, edi
call fcn.1006d1a0
mov ecx, edi
mov dword [ebp - 0x50], 0
mov dword [ebp - 0x4c], 0xf
mov byte [ebp - 0x60], 0
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10030e90
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x60]
call fcn.10071060
push 0x100a8a88
lea edx, [ebp - 0x60]
mov byte [ebp - 4], 0x47
lea ecx, [ebp - 0xa8]
call fcn.10071200
add esp, 4
lea ecx, [ebp - 0x90]
mov byte [ebp - 4], 0x48
push ecx
push eax
push dword [ebp - 0x14]
lea ecx, [ebp - 0x78]
call fcn.10072940
sub esp, 0x18
mov byte [ebp - 4], 0x49
mov ecx, esp
mov dword [ebp - 0x28], esp
lea edx, [ebp - 0x78]
push 0x100a8ea8
call fcn.10071200
add esp, 4
mov byte [ebp - 4], 0x4a
movaps xmm0, xmmword [0x10099d80]
mov eax, dword [esi + 0x4044]
mov word [ebp - 0x38], 0xb3f3
movups xmmword [ebp - 0x48], xmm0
test al, 1
jne 0x10030f5a
or eax, 1
mov dword [esi + 0x4044], eax
mov byte [ebp - 4], 0x4b
xorps xmm0, xmm0
movlpd qword [ebp - 0x20], xmm0
mov edx, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x20]
mov byte [esi + 0x24ca], 1
mov al, byte [ebp + ecx - 0x48]
mov byte [ecx + esi + 0x24b8], al
add ecx, 1
adc edx, 0
jne 0x10030f49
cmp ecx, 0x12
jb 0x10030f31
push 0x10087960
call fcn.100742f7
add esp, 4
mov byte [ebp - 4], 0x4a
lea edi, [esi + 0x24b8]
mov ecx, edi
call fcn.1006d200
sub esp, 0x18
mov ecx, edi
mov edx, esp
lea ebx, [ecx + 1]
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0xf
mov byte [edx], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10030f82
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10071060
mov ecx, dword [0x100ae8e4]
mov eax, dword [ecx]
mov byte [ebp - 4], 0x4f
call dword [eax]
mov byte [ebp - 4], 0x4e
mov edx, dword [ebp - 0x64]
cmp edx, 0x10
jb 0x10030fda
mov ecx, dword [ebp - 0x78]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10030fd0
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100310bb
push edx
push ecx
call fcn.10074240
add esp, 8
mov byte [ebp - 4], 0x4d
mov edx, dword [ebp - 0x94]
mov dword [ebp - 0x68], 0
mov dword [ebp - 0x64], 0xf
mov byte [ebp - 0x78], 0
cmp edx, 0x10
jb 0x1003102a
mov ecx, dword [ebp - 0xa8]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10031020
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100310bb
push edx
push ecx
call fcn.10074240
add esp, 8
mov byte [ebp - 4], 0x4c
mov edx, dword [ebp - 0x4c]
mov dword [ebp - 0x98], 0
mov dword [ebp - 0x94], 0xf
mov byte [ebp - 0xa8], 0
cmp edx, 0x10
jb 0x10031079
mov ecx, dword [ebp - 0x60]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003106f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100310bb
push edx
push ecx
call fcn.10074240
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x7c]
mov dword [ebp - 0x50], 0
mov dword [ebp - 0x4c], 0xf
mov byte [ebp - 0x60], 0
cmp edx, 0x10
jb 0x100310cb
mov ecx, dword [ebp - 0x90]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100310c1
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x100310c1
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.10074240
add esp, 8
mov ecx, dword [0x100ab690]
mov edx, 0x100a8e60
cmp dword [0x100a8e74], 0x10
push 0x100ac838
cmovae edx, dword [0x100a8e60]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x100319eb
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x3f64]
mov dword [ebp - 0x18], 0x1951d1f9
mov dword [ebp - 0x14], 0xb7ea88e3
push 0x100ac838
test al, 1
jne 0x1003117c
or eax, 1
mov dword [esi + 0x3f64], eax
mov dword [ebp - 4], 0x50
xorps xmm0, xmm0
movlpd qword [ebp - 0x2c], xmm0
mov edx, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x2c]
mov byte [esi + 0x2380], 1
nop dword [eax]
nop dword [eax + eax]
mov al, byte [ebp + ecx - 0x18]
mov byte [ecx + esi + 0x2378], al
add ecx, 1
adc edx, 0
jne 0x10031168
cmp ecx, 8
jb 0x10031150
push 0x10087730
call fcn.100742f7
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x2378]
mov ecx, edi
call fcn.1006cf60
sub esp, 0x18
mov ecx, edi
mov edx, esp
mov dword [ebp - 0x14], esp
lea ebx, [ecx + 1]
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0xf
mov byte [edx], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100311a7
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10071060
mov dword [ebp - 4], 0x51
mov eax, dword [esi + 0x3e4c]
mov dword [ebp - 0x1c], 0x6918ceb7
test al, 1
jne 0x10031229
or eax, 1
mov dword [esi + 0x3e4c], eax
mov byte [ebp - 4], 0x52
xorps xmm0, xmm0
movlpd qword [ebp - 0x2c], xmm0
mov edx, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x2c]
mov byte [esi + 0x351c], 1
nop dword [eax]
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x1c]
mov byte [ecx + esi + 0x3518], al
add ecx, 1
adc edx, 0
jne 0x10031218
cmp ecx, 4
jb 0x10031200
push 0x10087780
call fcn.100742f7
add esp, 4
mov byte [ebp - 4], 0x51
lea edi, [esi + 0x3518]
mov ecx, edi
call fcn.1006cfc0
mov ecx, edi
mov dword [ebp - 0x80], 0
mov dword [ebp - 0x7c], 0xf
mov byte [ebp - 0x90], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10031250
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x90]
call fcn.10071060
mov byte [ebp - 4], 0x53
movaps xmm0, xmmword [0x1009a2c0]
mov eax, dword [esi + 0x267c]
mov byte [ebp - 0x38], 0x91
movups xmmword [ebp - 0x48], xmm0
test al, 1
jne 0x100312d9
or eax, 1
mov dword [esi + 0x267c], eax
mov byte [ebp - 4], 0x54
xorps xmm0, xmm0
movlpd qword [ebp - 0x2c], xmm0
mov edx, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x2c]
mov byte [esi + 0x379], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x48]
mov byte [ecx + esi + 0x368], al
add ecx, 1
adc edx, 0
jne 0x100312c8
cmp ecx, 0x11
jb 0x100312b0
push 0x100877d0
call fcn.100742f7
add esp, 4
mov byte [ebp - 4], 0x53
lea edi, [esi + 0x368]
mov ecx, edi
call fcn.1006d020
mov ecx, edi
mov dword [ebp - 0x50], 0
mov dword [ebp - 0x4c], 0xf
mov byte [ebp - 0x60], 0
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10031300
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x60]
call fcn.10071060
push 0x100a8c78
lea edx, [ebp - 0x60]
mov byte [ebp - 4], 0x55
lea ecx, [ebp - 0xa8]
call fcn.10071200
add esp, 4
lea ecx, [ebp - 0x90]
mov byte [ebp - 4], 0x56
push ecx
push eax
push dword [ebp - 0x14]
lea ecx, [ebp - 0x78]
call fcn.10072940
sub esp, 0x18
mov byte [ebp - 4], 0x57
mov ecx, esp
mov dword [ebp - 0x28], esp
lea edx, [ebp - 0x78]
push 0x100a8ea8
call fcn.10071200
add esp, 4
mov byte [ebp - 4], 0x58
movaps xmm0, xmmword [0x1009aa60]
mov eax, dword [esi + 0x1800]
mov word [ebp - 0x38], 0xa5eb
movups xmmword [ebp - 0x48], xmm0
test al, 1
jne 0x100313ca
or eax, 1
mov dword [esi + 0x1800], eax
mov byte [ebp - 4], 0x59
xorps xmm0, xmm0
movlpd qword [ebp - 0x20], xmm0
mov edx, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x20]
mov byte [esi + 0x4cb6], 1
mov al, byte [ebp + ecx - 0x48]
mov byte [ecx + esi + 0x4ca4], al
add ecx, 1
adc edx, 0
jne 0x100313b9
cmp ecx, 0x12
jb 0x100313a1
push 0x10087820
call fcn.100742f7
add esp, 4
mov byte [ebp - 4], 0x58
lea edi, [esi + 0x4ca4]
mov ecx, edi
call fcn.1006d080
sub esp, 0x18
mov ecx, edi
mov edx, esp
lea ebx, [ecx + 1]
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0xf
mov byte [edx], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100313f2
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10071060
mov ecx, dword [0x100ae8e4]
mov eax, dword [ecx]
mov byte [ebp - 4], 0x5d
call dword [eax]
mov byte [ebp - 4], 0x5c
mov edx, dword [ebp - 0x64]
cmp edx, 0x10
jb 0x1003144a
mov ecx, dword [ebp - 0x78]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10031440
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003152b
push edx
push ecx
call fcn.10074240
add esp, 8
mov byte [ebp - 4], 0x5b
mov edx, dword [ebp - 0x94]
mov dword [ebp - 0x68], 0
mov dword [ebp - 0x64], 0xf
mov byte [ebp - 0x78], 0
cmp edx, 0x10
jb 0x1003149a
mov ecx, dword [ebp - 0xa8]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10031490
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003152b
push edx
push ecx
call fcn.10074240
add esp, 8
mov byte [ebp - 4], 0x5a
mov edx, dword [ebp - 0x4c]
mov dword [ebp - 0x98], 0
mov dword [ebp - 0x94], 0xf
mov byte [ebp - 0xa8], 0
cmp edx, 0x10
jb 0x100314e9
mov ecx, dword [ebp - 0x60]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100314df
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003152b
push edx
push ecx
call fcn.10074240
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x7c]
mov dword [ebp - 0x50], 0
mov dword [ebp - 0x4c], 0xf
mov byte [ebp - 0x60], 0
cmp edx, 0x10
jb 0x1003153b
mov ecx, dword [ebp - 0x90]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10031531
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x10031531
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.10074240
add esp, 8
mov ecx, dword [0x100ab690]
mov edx, 0x100a8e60
cmp dword [0x100a8e74], 0x10
push 0x100ac838
cmovae edx, dword [0x100a8e60]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x100319eb
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x15c0]
mov dword [ebp - 0x18], 0xb75d37f3
mov dword [ebp - 0x14], 0xb1600253
push 0x100ac838
test al, 1
jne 0x100315ec
or eax, 1
mov dword [esi + 0x15c0], eax
mov dword [ebp - 4], 0x5e
xorps xmm0, xmm0
movlpd qword [ebp - 0x2c], xmm0
mov edx, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x2c]
mov byte [esi + 0x4210], 1
nop dword [eax]
nop dword [eax + eax]
mov al, byte [ebp + ecx - 0x18]
mov byte [esi + ecx + 0x4208], al
add ecx, 1
adc edx, 0
jne 0x100315d8
cmp ecx, 8
jb 0x100315c0
push 0x100875f0
call fcn.100742f7
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x4208]
mov ecx, edi
call fcn.1006cde0
sub esp, 0x18
mov ecx, edi
mov edx, esp
mov dword [ebp - 0x14], esp
lea ebx, [ecx + 1]
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0xf
mov byte [edx], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10031617
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10071060
mov dword [ebp - 4], 0x5f
mov eax, dword [esi + 0xc40]
mov dword [ebp - 0x1c], 0xc71428bd
test al, 1
jne 0x10031699
or eax, 1
mov dword [esi + 0xc40], eax
mov byte [ebp - 4], 0x60
xorps xmm0, xmm0
movlpd qword [ebp - 0x2c], xmm0
mov edx, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x2c]
mov byte [esi + 0x2a68], 1
nop dword [eax]
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x1c]
mov byte [esi + ecx + 0x2a64], al
add ecx, 1
adc edx, 0
jne 0x10031688
cmp ecx, 4
jb 0x10031670
push 0x10087640
call fcn.100742f7
add esp, 4
mov byte [ebp - 4], 0x5f
lea edi, [esi + 0x2a64]
mov ecx, edi
call fcn.1006ce40
mov ecx, edi
mov dword [ebp - 0x68], 0
mov dword [ebp - 0x64], 0xf
mov byte [ebp - 0x78], 0
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100316c0
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x78]
call fcn.10071060
mov byte [ebp - 4], 0x61
movaps xmm0, xmmword [0x1009a310]
mov eax, dword [esi + 0x4d4]
mov byte [ebp - 0x38], 0x9b
movups xmmword [ebp - 0x48], xmm0
test al, 1
jne 0x1003173b
or eax, 1
mov dword [esi + 0x4d4], eax
mov byte [ebp - 4], 0x62
xorps xmm0, xmm0
movlpd qword [ebp - 0x2c], xmm0
mov edx, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x2c]
mov byte [esi + 0x45d5], 1
mov al, byte [ebp + ecx - 0x48]
mov byte [esi + ecx + 0x45c4], al
add ecx, 1
adc edx, 0
jne 0x1003172a
cmp ecx, 0x11
jb 0x10031712
push 0x10087690
call fcn.100742f7
add esp, 4
mov byte [ebp - 4], 0x61
lea edi, [esi + 0x45c4]
mov ecx, edi
call fcn.1006cea0
mov ecx, edi
mov dword [ebp - 0xb0], 0
mov dword [ebp - 0xac], 0xf
mov byte [ebp - 0xc0], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10031768
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0xc0]
call fcn.10071060
push 0x100a8e48
lea edx, [ebp - 0xc0]
mov byte [ebp - 4], 0x63
lea ecx, [ebp - 0xf0]
call fcn.10071200
add esp, 4
lea ecx, [ebp - 0x78]
mov byte [ebp - 4], 0x64
push ecx
push eax
push dword [ebp - 0x14]
lea ecx, [ebp - 0xd8]
call fcn.10072940
sub esp, 0x18
mov byte [ebp - 4], 0x65
mov ecx, esp
mov dword [ebp - 0x28], esp
lea edx, [ebp - 0xd8]
push 0x100a8ea8
call fcn.10071200
add esp, 4
mov byte [ebp - 4], 0x66
movaps xmm0, xmmword [0x1009a9a0]
mov eax, dword [esi + 0x2984]
mov word [ebp - 0x38], 0x43e1
movups xmmword [ebp - 0x48], xmm0
test al, 1
jne 0x1003183b
or eax, 1
mov dword [esi + 0x2984], eax
mov byte [ebp - 4], 0x67
xorps xmm0, xmm0
movlpd qword [ebp - 0x20], xmm0
mov edx, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x20]
mov byte [esi + 0x3072], 1
mov al, byte [ebp + ecx - 0x48]
mov byte [esi + ecx + 0x3060], al
add ecx, 1
adc edx, 0
jne 0x1003182a
cmp ecx, 0x12
jb 0x10031812
push 0x100876e0
call fcn.100742f7
add esp, 4
mov byte [ebp - 4], 0x66
lea esi, [esi + 0x3060]
mov ecx, esi
call fcn.1006cf00
sub esp, 0x18
mov ecx, esi
mov edx, esp
lea edi, [ecx + 1]
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0xf
mov byte [edx], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10031863
sub ecx, edi
push ecx
push esi
mov ecx, edx
call fcn.10071060
mov ecx, dword [0x100ae8e4]
mov eax, dword [ecx]
mov byte [ebp - 4], 0x6b
call dword [eax]
mov byte [ebp - 4], 0x6a
mov edx, dword [ebp - 0xc4]
cmp edx, 0x10
jb 0x100318c1
mov ecx, dword [ebp - 0xd8]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100318b7
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100319b7
push edx
push ecx
call fcn.10074240
add esp, 8
mov byte [ebp - 4], 0x69
mov edx, dword [ebp - 0xdc]
mov dword [ebp - 0xc8], 0
mov dword [ebp - 0xc4], 0xf
mov byte [ebp - 0xd8], 0
cmp edx, 0x10
jb 0x1003191a
mov ecx, dword [ebp - 0xf0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10031910
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100319b7
push edx
push ecx
call fcn.10074240
add esp, 8
mov byte [ebp - 4], 0x68
mov edx, dword [ebp - 0xac]
mov dword [ebp - 0xe0], 0
mov dword [ebp - 0xdc], 0xf
mov byte [ebp - 0xf0], 0
cmp edx, 0x10
jb 0x1003196f
mov ecx, dword [ebp - 0xc0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10031965
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100319b7
push edx
push ecx
call fcn.10074240
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x64]
mov dword [ebp - 0xb0], 0
mov dword [ebp - 0xac], 0xf
mov byte [ebp - 0xc0], 0
cmp edx, 0x10
jb 0x100319c7
mov ecx, dword [ebp - 0x78]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100319bd
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x100319bd
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.10074240
add esp, 8
mov ecx, dword [0x100ab690]
mov edx, 0x100a8e60
cmp dword [0x100a8e74], 0x10
push 0x100ac838
cmovae edx, dword [0x100a8e60]
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.10073919
mov esp, ebp
pop ebp
ret