Function at 0x10035880
Capabilities:
Contain obfuscated stackstrings
Parse pe header

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x10084543
mov eax, dword fs:[0]
push eax
sub esp, 0xdc
mov eax, dword [0x100b400c]
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 [0x100b6288]
push 0x100bcf38
push 0
push 0
mov esi, dword [eax + ecx*4]
mov dword [ebp - 0x20], 0xb9223265
mov eax, dword [esi + 0x491c]
test al, 1
jne 0x1003592c
or eax, 1
mov dword [esi + 0x491c], 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 + 0x1f2c], 1
nop dword [eax]
mov al, byte [ebp + ecx - 0x20]
mov byte [esi + ecx + 0x1f28], al
add ecx, 1
adc edx, 0
jne 0x10035918
cmp ecx, 4
jb 0x10035900
push 0x100949b0
call fcn.1007e9d6
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x1f28]
mov ecx, edi
call fcn.10075b50
mov ecx, edi
mov dword [ebp - 0x70], 0
mov dword [ebp - 0x60], 0
mov dword [ebp - 0x5c], 0xf
mov byte [ebp - 0x70], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10035957
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x70]
call fcn.1007b200
mov dword [ebp - 4], 1
mov eax, dword [esi + 0x44f8]
mov dword [ebp - 0x40], 0xd06f386c
mov dword [ebp - 0x3c], 0x2aeafdd6
mov dword [ebp - 0x38], 0xdc203b33
mov word [ebp - 0x34], 0x8bc4
test al, 1
jne 0x100359e9
or eax, 1
mov dword [esi + 0x44f8], 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 + 0x4432], 1
nop dword [eax + eax]
mov al, byte [ebp + ecx - 0x40]
mov byte [esi + ecx + 0x4424], al
add ecx, 1
adc edx, 0
jne 0x100359d8
cmp ecx, 0xe
jb 0x100359c0
push 0x10094a00
call fcn.1007e9d6
add esp, 4
mov byte [ebp - 4], 1
lea edi, [esi + 0x4424]
mov ecx, edi
call fcn.10075bb0
mov ecx, edi
mov dword [ebp - 0x58], 0
mov dword [ebp - 0x48], 0
mov dword [ebp - 0x44], 0xf
mov byte [ebp - 0x58], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10035a14
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x58]
call fcn.1007b200
push 0x100b54ac
lea edx, [ebp - 0x58]
mov byte [ebp - 4], 3
lea ecx, [ebp - 0xb8]
call fcn.1007b3a0
add esp, 4
lea ecx, [ebp - 0x70]
mov byte [ebp - 4], 4
push ecx
push eax
push dword [ebp - 0x1f]
lea ecx, [ebp - 0x88]
call fcn.1007d000
sub esp, 0x18
mov byte [ebp - 4], 5
mov ecx, esp
mov dword [ebp - 0x20], esp
lea edx, [ebp - 0x88]
push 0x100b58e0
call fcn.1007b3a0
add esp, 4
mov byte [ebp - 4], 6
movaps xmm0, xmmword [0x100a5070]
mov eax, dword [esi + 0x1b74]
mov byte [ebp - 0x30], 0x43
movups xmmword [ebp - 0x40], xmm0
test al, 1
jne 0x10035ae9
or eax, 1
mov dword [esi + 0x1b74], 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 + 0x4bf5], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x40]
mov byte [esi + ecx + 0x4be4], al
add ecx, 1
adc edx, 0
jne 0x10035ad8
cmp ecx, 0x11
jb 0x10035ac0
push 0x10094a50
call fcn.1007e9d6
add esp, 4
mov byte [ebp - 4], 6
lea edi, [esi + 0x4be4]
mov ecx, edi
call fcn.10075c10
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 0x10035b14
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.1007b200
mov ecx, dword [0x100b7338]
mov eax, dword [ecx]
mov byte [ebp - 4], 5
call dword [eax + 4]
mov byte [ebp - 4], 4
mov edx, dword [ebp - 0x74]
cmp edx, 0x10
jb 0x10035b70
mov ecx, dword [ebp - 0x88]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10035b66
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10035c51
push edx
push ecx
call fcn.1007e91f
add esp, 8
mov byte [ebp - 4], 3
mov edx, dword [ebp - 0xa4]
mov dword [ebp - 0x78], 0
mov dword [ebp - 0x74], 0xf
mov byte [ebp - 0x88], 0
cmp edx, 0x10
jb 0x10035bc3
mov ecx, dword [ebp - 0xb8]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10035bb9
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10035c51
push edx
push ecx
call fcn.1007e91f
add esp, 8
mov byte [ebp - 4], 1
mov edx, dword [ebp - 0x44]
mov dword [ebp - 0xa8], 0
mov dword [ebp - 0xa4], 0xf
mov byte [ebp - 0xb8], 0
cmp edx, 0x10
jb 0x10035c12
mov ecx, dword [ebp - 0x58]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10035c08
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10035c51
push edx
push ecx
call fcn.1007e91f
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x5c]
mov dword [ebp - 0x48], 0
mov dword [ebp - 0x44], 0xf
mov byte [ebp - 0x58], 0
cmp edx, 0x10
jb 0x10035c61
mov ecx, dword [ebp - 0x70]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10035c57
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x10035c57
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.1007e91f
add esp, 8
mov ecx, dword [0x100bbd6c]
mov edx, 0x100b5898
cmp dword [0x100b58ac], 0x10
push 0x100bcf38
cmovae edx, dword [0x100b5898]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x1003802c
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0xc4c]
mov dword [ebp - 0x20], 0xb76af4ff
push 0x100bcf38
push 0
push 0
test al, 1
jne 0x10035d0c
or eax, 1
mov dword [esi + 0xc4c], 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 + 0x20bc], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x20]
mov byte [esi + ecx + 0x20b8], al
add ecx, 1
adc edx, 0
jne 0x10035cf8
cmp ecx, 4
jb 0x10035ce0
push 0x100948c0
call fcn.1007e9d6
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x20b8]
mov ecx, edi
call fcn.10075a30
mov ecx, edi
mov dword [ebp - 0x70], 0
mov dword [ebp - 0x60], 0
mov dword [ebp - 0x5c], 0xf
mov byte [ebp - 0x70], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10035d37
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x70]
call fcn.1007b200
mov dword [ebp - 4], 9
mov eax, dword [esi + 0x2398]
mov dword [ebp - 0x40], 0xde27fef6
mov dword [ebp - 0x3c], 0xb08ac964
mov dword [ebp - 0x38], 0xd268fda9
mov word [ebp - 0x34], 0xbf76
test al, 1
jne 0x10035dc9
or eax, 1
mov dword [esi + 0x2398], 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 + 0x25aa], 1
nop dword [eax + eax]
mov al, byte [ebp + ecx - 0x40]
mov byte [ecx + esi + 0x259c], al
add ecx, 1
adc edx, 0
jne 0x10035db8
cmp ecx, 0xe
jb 0x10035da0
push 0x10094910
call fcn.1007e9d6
add esp, 4
mov byte [ebp - 4], 9
lea edi, [esi + 0x259c]
mov ecx, edi
call fcn.10075a90
mov ecx, edi
mov dword [ebp - 0x58], 0
mov dword [ebp - 0x48], 0
mov dword [ebp - 0x44], 0xf
mov byte [ebp - 0x58], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10035df4
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x58]
call fcn.1007b200
push 0x100b5698
lea edx, [ebp - 0x58]
mov byte [ebp - 4], 0xb
lea ecx, [ebp - 0xb8]
call fcn.1007b3a0
add esp, 4
lea ecx, [ebp - 0x70]
mov byte [ebp - 4], 0xc
push ecx
push eax
push dword [ebp - 0x33]
lea ecx, [ebp - 0x88]
call fcn.1007d000
sub esp, 0x18
mov byte [ebp - 4], 0xd
mov ecx, esp
mov dword [ebp - 0x34], esp
lea edx, [ebp - 0x88]
push 0x100b58e0
call fcn.1007b3a0
add esp, 4
mov byte [ebp - 4], 0xe
movaps xmm0, xmmword [0x100a5e20]
mov eax, dword [esi + 0x3580]
mov byte [ebp - 0x1c], 0xd9
movups xmmword [ebp - 0x2c], xmm0
test al, 1
jne 0x10035ec9
or eax, 1
mov dword [esi + 0x3580], 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 + 0x312d], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x2c]
mov byte [ecx + esi + 0x311c], al
add ecx, 1
adc edx, 0
jne 0x10035eb8
cmp ecx, 0x11
jb 0x10035ea0
push 0x10094960
call fcn.1007e9d6
add esp, 4
mov byte [ebp - 4], 0xe
lea edi, [esi + 0x311c]
mov ecx, edi
call fcn.10075af0
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 0x10035ef4
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.1007b200
mov ecx, dword [0x100b7338]
mov eax, dword [ecx]
mov byte [ebp - 4], 0xd
call dword [eax + 4]
mov byte [ebp - 4], 0xc
mov edx, dword [ebp - 0x74]
cmp edx, 0x10
jb 0x10035f50
mov ecx, dword [ebp - 0x88]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10035f46
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10036031
push edx
push ecx
call fcn.1007e91f
add esp, 8
mov byte [ebp - 4], 0xb
mov edx, dword [ebp - 0xa4]
mov dword [ebp - 0x78], 0
mov dword [ebp - 0x74], 0xf
mov byte [ebp - 0x88], 0
cmp edx, 0x10
jb 0x10035fa3
mov ecx, dword [ebp - 0xb8]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10035f99
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10036031
push edx
push ecx
call fcn.1007e91f
add esp, 8
mov byte [ebp - 4], 9
mov edx, dword [ebp - 0x44]
mov dword [ebp - 0xa8], 0
mov dword [ebp - 0xa4], 0xf
mov byte [ebp - 0xb8], 0
cmp edx, 0x10
jb 0x10035ff2
mov ecx, dword [ebp - 0x58]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10035fe8
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10036031
push edx
push ecx
call fcn.1007e91f
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x5c]
mov dword [ebp - 0x48], 0
mov dword [ebp - 0x44], 0xf
mov byte [ebp - 0x58], 0
cmp edx, 0x10
jb 0x10036041
mov ecx, dword [ebp - 0x70]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10036037
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x10036037
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.1007e91f
add esp, 8
mov ecx, dword [0x100bbd6c]
mov edx, 0x100b5898
cmp dword [0x100b58ac], 0x10
push 0x100bcf38
cmovae edx, dword [0x100b5898]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x1003802c
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x1f50]
mov dword [ebp - 0x20], 0x2b2844a3
push 0x100bcf38
push 0
push 0
test al, 1
jne 0x100360ec
or eax, 1
mov dword [esi + 0x1f50], 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 + 0x788], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x20]
mov byte [ecx + esi + 0x784], al
add ecx, 1
adc edx, 0
jne 0x100360d8
cmp ecx, 4
jb 0x100360c0
push 0x100947d0
call fcn.1007e9d6
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x784]
mov ecx, edi
call fcn.10075910
mov ecx, edi
mov dword [ebp - 0x70], 0
mov dword [ebp - 0x60], 0
mov dword [ebp - 0x5c], 0xf
mov byte [ebp - 0x70], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10036117
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x70]
call fcn.1007b200
mov dword [ebp - 4], 0x11
mov eax, dword [esi + 0x1a84]
mov dword [ebp - 0x40], 0x42654eaa
mov dword [ebp - 0x3c], 0x9a869f7a
mov dword [ebp - 0x38], 0x4e2a4df5
mov word [ebp - 0x34], 0xe968
test al, 1
jne 0x100361a9
or eax, 1
mov dword [esi + 0x1a84], 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 + 0x3426], 1
nop dword [eax + eax]
mov al, byte [ebp + ecx - 0x40]
mov byte [ecx + esi + 0x3418], al
add ecx, 1
adc edx, 0
jne 0x10036198
cmp ecx, 0xe
jb 0x10036180
push 0x10094820
call fcn.1007e9d6
add esp, 4
mov byte [ebp - 4], 0x11
lea edi, [esi + 0x3418]
mov ecx, edi
call fcn.10075970
mov ecx, edi
mov dword [ebp - 0x58], 0
mov dword [ebp - 0x48], 0
mov dword [ebp - 0x44], 0xf
mov byte [ebp - 0x58], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100361d4
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x58]
call fcn.1007b200
push 0x100b5880
lea edx, [ebp - 0x58]
mov byte [ebp - 4], 0x13
lea ecx, [ebp - 0xb8]
call fcn.1007b3a0
add esp, 4
lea ecx, [ebp - 0x70]
mov byte [ebp - 4], 0x14
push ecx
push eax
push dword [ebp - 0x33]
lea ecx, [ebp - 0x88]
call fcn.1007d000
sub esp, 0x18
mov byte [ebp - 4], 0x15
mov ecx, esp
mov dword [ebp - 0x34], esp
lea edx, [ebp - 0x88]
push 0x100b58e0
call fcn.1007b3a0
add esp, 4
mov byte [ebp - 4], 0x16
movaps xmm0, xmmword [0x100a5c10]
mov eax, dword [esi + 0x3044]
mov byte [ebp - 0x1c], 0x85
movups xmmword [ebp - 0x2c], xmm0
test al, 1
jne 0x100362a9
or eax, 1
mov dword [esi + 0x3044], 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 + 0x5a5], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x2c]
mov byte [ecx + esi + 0x594], al
add ecx, 1
adc edx, 0
jne 0x10036298
cmp ecx, 0x11
jb 0x10036280
push 0x10094870
call fcn.1007e9d6
add esp, 4
mov byte [ebp - 4], 0x16
lea edi, [esi + 0x594]
mov ecx, edi
call fcn.100759d0
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 0x100362d4
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.1007b200
mov ecx, dword [0x100b7338]
mov eax, dword [ecx]
mov byte [ebp - 4], 0x15
call dword [eax + 4]
mov byte [ebp - 4], 0x14
mov edx, dword [ebp - 0x74]
cmp edx, 0x10
jb 0x10036330
mov ecx, dword [ebp - 0x88]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10036326
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10036411
push edx
push ecx
call fcn.1007e91f
add esp, 8
mov byte [ebp - 4], 0x13
mov edx, dword [ebp - 0xa4]
mov dword [ebp - 0x78], 0
mov dword [ebp - 0x74], 0xf
mov byte [ebp - 0x88], 0
cmp edx, 0x10
jb 0x10036383
mov ecx, dword [ebp - 0xb8]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10036379
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10036411
push edx
push ecx
call fcn.1007e91f
add esp, 8
mov byte [ebp - 4], 0x11
mov edx, dword [ebp - 0x44]
mov dword [ebp - 0xa8], 0
mov dword [ebp - 0xa4], 0xf
mov byte [ebp - 0xb8], 0
cmp edx, 0x10
jb 0x100363d2
mov ecx, dword [ebp - 0x58]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100363c8
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10036411
push edx
push ecx
call fcn.1007e91f
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x5c]
mov dword [ebp - 0x48], 0
mov dword [ebp - 0x44], 0xf
mov byte [ebp - 0x58], 0
cmp edx, 0x10
jb 0x10036421
mov ecx, dword [ebp - 0x70]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10036417
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x10036417
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.1007e91f
add esp, 8
mov ecx, dword [0x100bbd6c]
mov edx, 0x100b5898
cmp dword [0x100b58ac], 0x10
push 0x100bcf38
cmovae edx, dword [0x100b5898]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x1003802c
mov ecx, 0x100bcf38
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10036455
sub ecx, edx
cmp ecx, 0x20
jae 0x1003646c
cmp ecx, 1
ja 0x1003802c
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x65c]
mov dword [ebp - 0x38], 0xe3b9b799
mov dword [ebp - 0x34], 0xe2d66d90
mov byte [ebp - 0x30], 0xf1
push 0x100bcf38
test al, 1
jne 0x100364ec
or eax, 1
mov dword [esi + 0x65c], 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 + 0x456d], 1
nop dword [eax]
mov al, byte [ebp + ecx - 0x38]
mov byte [ecx + esi + 0x4564], al
add ecx, 1
adc edx, 0
jne 0x100364d8
cmp ecx, 9
jb 0x100364c0
push 0x10094690
call fcn.1007e9d6
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x4564]
mov ecx, edi
call fcn.10075790
sub esp, 0x18
mov ecx, edi
mov edx, esp
mov dword [ebp - 0x34], esp
lea ebx, [ecx + 1]
mov dword [edx], 0
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0xf
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10036520
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.1007b200
mov dword [ebp - 4], 0x19
mov eax, dword [esi + 0x1c2c]
mov dword [ebp - 0x20], 0x93f0a8d7
test al, 1
jne 0x10036599
or eax, 1
mov dword [esi + 0x1c2c], 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 + 0x4784], 1
nop dword [eax]
mov al, byte [ebp + ecx - 0x20]
mov byte [ecx + esi + 0x4780], al
add ecx, 1
adc edx, 0
jne 0x10036588
cmp ecx, 4
jb 0x10036570
push 0x100946e0
call fcn.1007e9d6
add esp, 4
mov byte [ebp - 4], 0x19
lea edi, [esi + 0x4780]
mov ecx, edi
call fcn.100757f0
mov ecx, edi
mov dword [ebp - 0xa0], 0
mov dword [ebp - 0x90], 0
mov dword [ebp - 0x8c], 0xf
mov byte [ebp - 0xa0], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100365d0
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0xa0]
call fcn.1007b200
mov byte [ebp - 4], 0x1b
mov eax, dword [esi + 0x3d54]
mov dword [ebp - 0x2c], 0xfabda2de
mov dword [ebp - 0x28], 0xe2ca21cc
mov dword [ebp - 0x24], 0xf6f2a181
mov word [ebp - 0x20], 0x57de
test al, 1
jne 0x1003665a
or eax, 1
mov dword [esi + 0x3d54], 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 + 0x377e], 1
mov al, byte [ebp + ecx - 0x2c]
mov byte [ecx + esi + 0x3770], al
add ecx, 1
adc edx, 0
jne 0x10036649
cmp ecx, 0xe
jb 0x10036631
push 0x10094730
call fcn.1007e9d6
add esp, 4
mov byte [ebp - 4], 0x1b
lea edi, [esi + 0x3770]
mov ecx, edi
call fcn.10075850
mov ecx, edi
mov dword [ebp - 0x70], 0
mov dword [ebp - 0x60], 0
mov dword [ebp - 0x5c], 0xf
mov byte [ebp - 0x70], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10036685
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x70]
call fcn.1007b200
push 0x100b54ac
lea edx, [ebp - 0x70]
mov byte [ebp - 4], 0x1d
lea ecx, [ebp - 0xb8]
call fcn.1007b3a0
add esp, 4
lea ecx, [ebp - 0xa0]
mov byte [ebp - 4], 0x1e
push ecx
push eax
push dword [ebp - 0x33]
lea ecx, [ebp - 0x88]
call fcn.1007d000
sub esp, 0x18
mov byte [ebp - 4], 0x1f
mov ecx, esp
mov dword [ebp - 0x20], esp
lea edx, [ebp - 0x88]
push 0x100b58e0
call fcn.1007b3a0
add esp, 4
mov byte [ebp - 4], 0x20
movaps xmm0, xmmword [0x100a5690]
mov eax, dword [esi + 0x1048]
mov byte [ebp - 0x44], 0xf1
movups xmmword [ebp - 0x54], xmm0
test al, 1
jne 0x10036759
or eax, 1
mov dword [esi + 0x1048], 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 + 0x3405], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x54]
mov byte [ecx + esi + 0x33f4], al
add ecx, 1
adc edx, 0
jne 0x10036748
cmp ecx, 0x11
jb 0x10036730
push 0x10094780
call fcn.1007e9d6
add esp, 4
mov byte [ebp - 4], 0x20
lea edi, [esi + 0x33f4]
mov ecx, edi
call fcn.100758b0
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 0x10036784
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.1007b200
mov ecx, dword [0x100b7338]
mov eax, dword [ecx]
mov byte [ebp - 4], 0x25
call dword [eax]
mov byte [ebp - 4], 0x24
mov edx, dword [ebp - 0x74]
cmp edx, 0x10
jb 0x100367df
mov ecx, dword [ebp - 0x88]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100367d5
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100368c6
push edx
push ecx
call fcn.1007e91f
add esp, 8
mov byte [ebp - 4], 0x23
mov edx, dword [ebp - 0xa4]
mov dword [ebp - 0x78], 0
mov dword [ebp - 0x74], 0xf
mov byte [ebp - 0x88], 0
cmp edx, 0x10
jb 0x10036832
mov ecx, dword [ebp - 0xb8]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10036828
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100368c6
push edx
push ecx
call fcn.1007e91f
add esp, 8
mov byte [ebp - 4], 0x22
mov edx, dword [ebp - 0x5c]
mov dword [ebp - 0xa8], 0
mov dword [ebp - 0xa4], 0xf
mov byte [ebp - 0xb8], 0
cmp edx, 0x10
jb 0x10036881
mov ecx, dword [ebp - 0x70]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10036877
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100368c6
push edx
push ecx
call fcn.1007e91f
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x8c]
mov dword [ebp - 0x60], 0
mov dword [ebp - 0x5c], 0xf
mov byte [ebp - 0x70], 0
cmp edx, 0x10
jb 0x100368d6
mov ecx, dword [ebp - 0xa0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100368cc
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x100368cc
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.1007e91f
add esp, 8
mov ecx, dword [0x100bbd6c]
mov edx, 0x100b5898
cmp dword [0x100b58ac], 0x10
push 0x100bcf38
cmovae edx, dword [0x100b5898]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x1003802c
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x46ec]
mov dword [ebp - 0x38], 0xc19b2f41
mov dword [ebp - 0x34], 0x346cf7de
mov byte [ebp - 0x30], 0x29
push 0x100bcf38
test al, 1
jne 0x1003698c
or eax, 1
mov dword [esi + 0x46ec], 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 + 0x1071], 1
nop dword [eax]
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x38]
mov byte [ecx + esi + 0x1068], al
add ecx, 1
adc edx, 0
jne 0x10036978
cmp ecx, 9
jb 0x10036960
push 0x10094550
call fcn.1007e9d6
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x1068]
mov ecx, edi
call fcn.10075610
sub esp, 0x18
mov ecx, edi
mov edx, esp
mov dword [ebp - 0x14], esp
lea ebx, [ecx + 1]
mov dword [edx], 0
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0xf
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100369c0
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.1007b200
mov dword [ebp - 4], 0x27
mov eax, dword [esi + 0xcec]
mov dword [ebp - 0x20], 0xb1d2300f
test al, 1
jne 0x10036a39
or eax, 1
mov dword [esi + 0xcec], eax
mov byte [ebp - 4], 0x28
xorps xmm0, xmm0
movlpd qword [ebp - 0x38], xmm0
mov edx, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x38]
mov byte [esi + 0x470c], 1
nop dword [eax]
mov al, byte [ebp + ecx - 0x20]
mov byte [ecx + esi + 0x4708], al
add ecx, 1
adc edx, 0
jne 0x10036a28
cmp ecx, 4
jb 0x10036a10
push 0x100945a0
call fcn.1007e9d6
add esp, 4
mov byte [ebp - 4], 0x27
lea edi, [esi + 0x4708]
mov ecx, edi
call fcn.10075670
mov ecx, edi
mov dword [ebp - 0xa0], 0
mov dword [ebp - 0x90], 0
mov dword [ebp - 0x8c], 0xf
mov byte [ebp - 0xa0], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10036a70
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0xa0]
call fcn.1007b200
mov byte [ebp - 4], 0x29
mov eax, dword [esi + 0x2130]
mov dword [ebp - 0x2c], 0xd89f3a06
mov dword [ebp - 0x28], 0x3470bb82
mov dword [ebp - 0x24], 0xd4d03959
mov word [ebp - 0x20], 0xcd90
test al, 1
jne 0x10036afa
or eax, 1
mov dword [esi + 0x2130], eax
mov byte [ebp - 4], 0x2a
xorps xmm0, xmm0
movlpd qword [ebp - 0x38], xmm0
mov edx, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x38]
mov byte [esi + 0x409e], 1
mov al, byte [ebp + ecx - 0x2c]
mov byte [ecx + esi + 0x4090], al
add ecx, 1
adc edx, 0
jne 0x10036ae9
cmp ecx, 0xe
jb 0x10036ad1
push 0x100945f0
call fcn.1007e9d6
add esp, 4
mov byte [ebp - 4], 0x29
lea edi, [esi + 0x4090]
mov ecx, edi
call fcn.100756d0
mov ecx, edi
mov dword [ebp - 0x70], 0
mov dword [ebp - 0x60], 0
mov dword [ebp - 0x5c], 0xf
mov byte [ebp - 0x70], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10036b25
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x70]
call fcn.1007b200
push 0x100b5698
lea edx, [ebp - 0x70]
mov byte [ebp - 4], 0x2b
lea ecx, [ebp - 0xb8]
call fcn.1007b3a0
add esp, 4
lea ecx, [ebp - 0xa0]
mov byte [ebp - 4], 0x2c
push ecx
push eax
push dword [ebp - 0x14]
lea ecx, [ebp - 0x88]
call fcn.1007d000
sub esp, 0x18
mov byte [ebp - 4], 0x2d
mov ecx, esp
mov dword [ebp - 0x34], esp
lea edx, [ebp - 0x88]
push 0x100b58e0
call fcn.1007b3a0
add esp, 4
mov byte [ebp - 4], 0x2e
movaps xmm0, xmmword [0x100a5220]
mov eax, dword [esi + 0x49e8]
mov byte [ebp - 0x44], 0x29
movups xmmword [ebp - 0x54], xmm0
test al, 1
jne 0x10036bf9
or eax, 1
mov dword [esi + 0x49e8], eax
mov byte [ebp - 4], 0x2f
xorps xmm0, xmm0
movlpd qword [ebp - 0x24], xmm0
mov edx, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x24]
mov byte [esi + 0x174d], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x54]
mov byte [esi + ecx + 0x173c], al
add ecx, 1
adc edx, 0
jne 0x10036be8
cmp ecx, 0x11
jb 0x10036bd0
push 0x10094640
call fcn.1007e9d6
add esp, 4
mov byte [ebp - 4], 0x2e
lea edi, [esi + 0x173c]
mov ecx, edi
call fcn.10075730
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 0x10036c24
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.1007b200
mov ecx, dword [0x100b7338]
mov eax, dword [ecx]
mov byte [ebp - 4], 0x33
call dword [eax]
mov byte [ebp - 4], 0x32
mov edx, dword [ebp - 0x74]
cmp edx, 0x10
jb 0x10036c7f
mov ecx, dword [ebp - 0x88]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10036c75
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10036d66
push edx
push ecx
call fcn.1007e91f
add esp, 8
mov byte [ebp - 4], 0x31
mov edx, dword [ebp - 0xa4]
mov dword [ebp - 0x78], 0
mov dword [ebp - 0x74], 0xf
mov byte [ebp - 0x88], 0
cmp edx, 0x10
jb 0x10036cd2
mov ecx, dword [ebp - 0xb8]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10036cc8
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10036d66
push edx
push ecx
call fcn.1007e91f
add esp, 8
mov byte [ebp - 4], 0x30
mov edx, dword [ebp - 0x5c]
mov dword [ebp - 0xa8], 0
mov dword [ebp - 0xa4], 0xf
mov byte [ebp - 0xb8], 0
cmp edx, 0x10
jb 0x10036d21
mov ecx, dword [ebp - 0x70]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10036d17
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10036d66
push edx
push ecx
call fcn.1007e91f
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x8c]
mov dword [ebp - 0x60], 0
mov dword [ebp - 0x5c], 0xf
mov byte [ebp - 0x70], 0
cmp edx, 0x10
jb 0x10036d76
mov ecx, dword [ebp - 0xa0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10036d6c
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x10036d6c
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.1007e91f
add esp, 8
mov ecx, dword [0x100bbd6c]
mov edx, 0x100b5898
cmp dword [0x100b58ac], 0x10
push 0x100bcf38
cmovae edx, dword [0x100b5898]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x1003802c
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x35b4]
mov dword [ebp - 0x38], 0x693d7373
mov dword [ebp - 0x34], 0x98f627fe
mov byte [ebp - 0x30], 0x1b
push 0x100bcf38
test al, 1
jne 0x10036e2c
or eax, 1
mov dword [esi + 0x35b4], 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 + 0x1265], 1
nop dword [eax]
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x38]
mov byte [esi + ecx + 0x125c], al
add ecx, 1
adc edx, 0
jne 0x10036e18
cmp ecx, 9
jb 0x10036e00
push 0x10094410
call fcn.1007e9d6
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x125c]
mov ecx, edi
call fcn.10075490
sub esp, 0x18
mov ecx, edi
mov edx, esp
mov dword [ebp - 0x14], esp
lea ebx, [ecx + 1]
mov dword [edx], 0
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0xf
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10036e60
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.1007b200
mov dword [ebp - 4], 0x35
mov eax, dword [esi + 0x4c84]
mov dword [ebp - 0x20], 0x19746c3d
test al, 1
jne 0x10036ed9
or eax, 1
mov dword [esi + 0x4c84], eax
mov byte [ebp - 4], 0x36
xorps xmm0, xmm0
movlpd qword [ebp - 0x38], xmm0
mov edx, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x38]
mov byte [esi + 0x2e40], 1
nop dword [eax]
mov al, byte [ebp + ecx - 0x20]
mov byte [esi + ecx + 0x2e3c], al
add ecx, 1
adc edx, 0
jne 0x10036ec8
cmp ecx, 4
jb 0x10036eb0
push 0x10094460
call fcn.1007e9d6
add esp, 4
mov byte [ebp - 4], 0x35
lea edi, [esi + 0x2e3c]
mov ecx, edi
call fcn.100754f0
mov ecx, edi
mov dword [ebp - 0xa0], 0
mov dword [ebp - 0x90], 0
mov dword [ebp - 0x8c], 0xf
mov byte [ebp - 0xa0], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10036f10
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0xa0]
call fcn.1007b200
mov byte [ebp - 4], 0x37
mov eax, dword [esi + 0x187c]
mov dword [ebp - 0x2c], 0x70396634
mov dword [ebp - 0x28], 0x98ea6ba2
mov dword [ebp - 0x24], 0x7c76656b
mov word [ebp - 0x20], 0x1db0
test al, 1
jne 0x10036f9a
or eax, 1
mov dword [esi + 0x187c], eax
mov byte [ebp - 4], 0x38
xorps xmm0, xmm0
movlpd qword [ebp - 0x38], xmm0
mov edx, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x38]
mov byte [esi + 0x4daa], 1
mov al, byte [ebp + ecx - 0x2c]
mov byte [esi + ecx + 0x4d9c], al
add ecx, 1
adc edx, 0
jne 0x10036f89
cmp ecx, 0xe
jb 0x10036f71
push 0x100944b0
call fcn.1007e9d6
add esp, 4
mov byte [ebp - 4], 0x37
lea edi, [esi + 0x4d9c]
mov ecx, edi
call fcn.10075550
mov ecx, edi
mov dword [ebp - 0x70], 0
mov dword [ebp - 0x60], 0
mov dword [ebp - 0x5c], 0xf
mov byte [ebp - 0x70], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10036fc5
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x70]
call fcn.1007b200
push 0x100b5880
lea edx, [ebp - 0x70]
mov byte [ebp - 4], 0x39
lea ecx, [ebp - 0xb8]
call fcn.1007b3a0
add esp, 4
lea ecx, [ebp - 0xa0]
mov byte [ebp - 4], 0x3a
push ecx
push eax
push dword [ebp - 0x14]
lea ecx, [ebp - 0x88]
call fcn.1007d000
sub esp, 0x18
mov byte [ebp - 4], 0x3b
mov ecx, esp
mov dword [ebp - 0x34], esp
lea edx, [ebp - 0x88]
push 0x100b58e0
call fcn.1007b3a0
add esp, 4
mov byte [ebp - 4], 0x3c
movaps xmm0, xmmword [str.hf_x]
mov eax, dword [esi + 0x19d8]
mov byte [ebp - 0x44], 0x1b
movups xmmword [ebp - 0x54], xmm0
test al, 1
jne 0x10037099
or eax, 1
mov dword [esi + 0x19d8], eax
mov byte [ebp - 4], 0x3d
xorps xmm0, xmm0
movlpd qword [ebp - 0x24], xmm0
mov edx, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x24]
mov byte [esi + 0x2681], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x54]
mov byte [esi + ecx + 0x2670], al
add ecx, 1
adc edx, 0
jne 0x10037088
cmp ecx, 0x11
jb 0x10037070
push 0x10094500
call fcn.1007e9d6
add esp, 4
mov byte [ebp - 4], 0x3c
lea edi, [esi + 0x2670]
mov ecx, edi
call fcn.100755b0
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 0x100370c4
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.1007b200
mov ecx, dword [0x100b7338]
mov eax, dword [ecx]
mov byte [ebp - 4], 0x41
call dword [eax]
mov byte [ebp - 4], 0x40
mov edx, dword [ebp - 0x74]
cmp edx, 0x10
jb 0x1003711f
mov ecx, dword [ebp - 0x88]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10037115
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10037206
push edx
push ecx
call fcn.1007e91f
add esp, 8
mov byte [ebp - 4], 0x3f
mov edx, dword [ebp - 0xa4]
mov dword [ebp - 0x78], 0
mov dword [ebp - 0x74], 0xf
mov byte [ebp - 0x88], 0
cmp edx, 0x10
jb 0x10037172
mov ecx, dword [ebp - 0xb8]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10037168
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10037206
push edx
push ecx
call fcn.1007e91f
add esp, 8
mov byte [ebp - 4], 0x3e
mov edx, dword [ebp - 0x5c]
mov dword [ebp - 0xa8], 0
mov dword [ebp - 0xa4], 0xf
mov byte [ebp - 0xb8], 0
cmp edx, 0x10
jb 0x100371c1
mov ecx, dword [ebp - 0x70]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100371b7
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10037206
push edx
push ecx
call fcn.1007e91f
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x8c]
mov dword [ebp - 0x60], 0
mov dword [ebp - 0x5c], 0xf
mov byte [ebp - 0x70], 0
cmp edx, 0x10
jb 0x10037216
mov ecx, dword [ebp - 0xa0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003720c
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x1003720c
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.1007e91f
add esp, 8
mov ecx, dword [0x100bbd6c]
mov edx, 0x100b5898
cmp dword [0x100b58ac], 0x10
push 0x100bcf38
cmovae edx, dword [0x100b5898]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x1003802c
mov ecx, 0x100bcf38
lea edx, [ecx + 1]
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10037250
sub ecx, edx
cmp ecx, 0x20
jae 0x10037267
cmp ecx, 1
ja 0x1003802c
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x98]
mov dword [ebp - 0x18], 0x5565db05
mov dword [ebp - 0x14], 0x395a4023
push 0x100bcf38
test al, 1
jne 0x100372ec
or eax, 1
mov dword [esi + 0x98], eax
mov dword [ebp - 4], 0x42
xorps xmm0, xmm0
movlpd qword [ebp - 0x38], xmm0
mov edx, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x38]
mov byte [esi + 0x1a2c], 1
nop dword [eax]
nop dword [eax + eax]
mov al, byte [ebp + ecx - 0x18]
mov byte [esi + ecx + 0x1a24], al
add ecx, 1
adc edx, 0
jne 0x100372d8
cmp ecx, 8
jb 0x100372c0
push 0x100942d0
call fcn.1007e9d6
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x1a24]
mov ecx, edi
call fcn.10075310
sub esp, 0x18
mov ecx, edi
mov edx, esp
mov dword [ebp - 0x14], esp
lea ebx, [ecx + 1]
mov dword [edx], 0
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0xf
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10037320
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.1007b200
mov dword [ebp - 4], 0x43
mov eax, dword [esi + 0x2b24]
mov dword [ebp - 0x20], 0x252cc44b
test al, 1
jne 0x10037399
or eax, 1
mov dword [esi + 0x2b24], eax
mov byte [ebp - 4], 0x44
xorps xmm0, xmm0
movlpd qword [ebp - 0x38], xmm0
mov edx, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x38]
mov byte [esi + 0x391c], 1
nop dword [eax]
mov al, byte [ebp + ecx - 0x20]
mov byte [esi + ecx + 0x3918], al
add ecx, 1
adc edx, 0
jne 0x10037388
cmp ecx, 4
jb 0x10037370
push 0x10094320
call fcn.1007e9d6
add esp, 4
mov byte [ebp - 4], 0x43
lea edi, [esi + 0x3918]
mov ecx, edi
call fcn.10075370
mov ecx, edi
mov dword [ebp - 0xa0], 0
mov dword [ebp - 0x90], 0
mov dword [ebp - 0x8c], 0xf
mov byte [ebp - 0xa0], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100373d0
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0xa0]
call fcn.1007b200
mov byte [ebp - 4], 0x45
mov eax, dword [esi + 0x37c0]
mov dword [ebp - 0x2c], 0x4c61ce42
mov dword [ebp - 0x28], 0x16461936
mov dword [ebp - 0x24], 0x402ecd1d
mov word [ebp - 0x20], 0x6f24
test al, 1
jne 0x1003745a
or eax, 1
mov dword [esi + 0x37c0], eax
mov byte [ebp - 4], 0x46
xorps xmm0, xmm0
movlpd qword [ebp - 0x38], xmm0
mov edx, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x38]
mov byte [esi + 0x1fa2], 1
mov al, byte [ebp + ecx - 0x2c]
mov byte [esi + ecx + 0x1f94], al
add ecx, 1
adc edx, 0
jne 0x10037449
cmp ecx, 0xe
jb 0x10037431
push 0x10094370
call fcn.1007e9d6
add esp, 4
mov byte [ebp - 4], 0x45
lea edi, [esi + 0x1f94]
mov ecx, edi
call fcn.100753d0
mov ecx, edi
mov dword [ebp - 0x70], 0
mov dword [ebp - 0x60], 0
mov dword [ebp - 0x5c], 0xf
mov byte [ebp - 0x70], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10037485
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x70]
call fcn.1007b200
push 0x100b54ac
lea edx, [ebp - 0x70]
mov byte [ebp - 4], 0x47
lea ecx, [ebp - 0xb8]
call fcn.1007b3a0
add esp, 4
lea ecx, [ebp - 0xa0]
mov byte [ebp - 4], 0x48
push ecx
push eax
push dword [ebp - 0x14]
lea ecx, [ebp - 0x88]
call fcn.1007d000
sub esp, 0x18
mov byte [ebp - 4], 0x49
mov ecx, esp
mov dword [ebp - 0x34], esp
lea edx, [ebp - 0x88]
push 0x100b58e0
call fcn.1007b3a0
add esp, 4
mov byte [ebp - 4], 0x4a
movaps xmm0, xmmword [0x100a4e90]
mov eax, dword [esi + 0x10d4]
mov byte [ebp - 0x44], 0x6d
movups xmmword [ebp - 0x54], xmm0
test al, 1
jne 0x10037559
or eax, 1
mov dword [esi + 0x10d4], eax
mov byte [ebp - 4], 0x4b
xorps xmm0, xmm0
movlpd qword [ebp - 0x24], xmm0
mov edx, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x24]
mov byte [esi + 0x98d], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x54]
mov byte [ecx + esi + 0x97c], al
add ecx, 1
adc edx, 0
jne 0x10037548
cmp ecx, 0x11
jb 0x10037530
push 0x100943c0
call fcn.1007e9d6
add esp, 4
mov byte [ebp - 4], 0x4a
lea edi, [esi + 0x97c]
mov ecx, edi
call fcn.10075430
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 0x10037584
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.1007b200
mov ecx, dword [0x100b7338]
mov eax, dword [ecx]
mov byte [ebp - 4], 0x4f
call dword [eax]
mov byte [ebp - 4], 0x4e
mov edx, dword [ebp - 0x74]
cmp edx, 0x10
jb 0x100375df
mov ecx, dword [ebp - 0x88]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100375d5
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100376c6
push edx
push ecx
call fcn.1007e91f
add esp, 8
mov byte [ebp - 4], 0x4d
mov edx, dword [ebp - 0xa4]
mov dword [ebp - 0x78], 0
mov dword [ebp - 0x74], 0xf
mov byte [ebp - 0x88], 0
cmp edx, 0x10
jb 0x10037632
mov ecx, dword [ebp - 0xb8]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10037628
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100376c6
push edx
push ecx
call fcn.1007e91f
add esp, 8
mov byte [ebp - 4], 0x4c
mov edx, dword [ebp - 0x5c]
mov dword [ebp - 0xa8], 0
mov dword [ebp - 0xa4], 0xf
mov byte [ebp - 0xb8], 0
cmp edx, 0x10
jb 0x10037681
mov ecx, dword [ebp - 0x70]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10037677
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100376c6
push edx
push ecx
call fcn.1007e91f
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x8c]
mov dword [ebp - 0x60], 0
mov dword [ebp - 0x5c], 0xf
mov byte [ebp - 0x70], 0
cmp edx, 0x10
jb 0x100376d6
mov ecx, dword [ebp - 0xa0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100376cc
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x100376cc
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.1007e91f
add esp, 8
mov ecx, dword [0x100bbd6c]
mov edx, 0x100b5898
cmp dword [0x100b58ac], 0x10
push 0x100bcf38
cmovae edx, dword [0x100b5898]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x1003802c
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0xc7c]
mov dword [ebp - 0x18], 0xf327d769
mov dword [ebp - 0x14], 0x97ac58c5
push 0x100bcf38
test al, 1
jne 0x1003777c
or eax, 1
mov dword [esi + 0xc7c], eax
mov dword [ebp - 4], 0x50
xorps xmm0, xmm0
movlpd qword [ebp - 0x38], xmm0
mov edx, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x38]
mov byte [esi + 0x1b0], 1
nop
mov al, byte [ebp + ecx - 0x18]
mov byte [ecx + esi + 0x1a8], al
add ecx, 1
adc edx, 0
jne 0x10037768
cmp ecx, 8
jb 0x10037750
push 0x10094190
call fcn.1007e9d6
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x1a8]
mov ecx, edi
call fcn.10075190
sub esp, 0x18
mov ecx, edi
mov edx, esp
mov dword [ebp - 0x14], esp
lea ebx, [ecx + 1]
mov dword [edx], 0
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0xf
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100377b0
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.1007b200
mov dword [ebp - 4], 0x51
mov eax, dword [esi + 0x3cd8]
mov dword [ebp - 0x20], 0x836ec827
test al, 1
jne 0x10037829
or eax, 1
mov dword [esi + 0x3cd8], eax
mov byte [ebp - 4], 0x52
xorps xmm0, xmm0
movlpd qword [ebp - 0x38], xmm0
mov edx, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x38]
mov byte [esi + 0x39d0], 1
nop dword [eax]
mov al, byte [ebp + ecx - 0x20]
mov byte [ecx + esi + 0x39cc], al
add ecx, 1
adc edx, 0
jne 0x10037818
cmp ecx, 4
jb 0x10037800
push 0x100941e0
call fcn.1007e9d6
add esp, 4
mov byte [ebp - 4], 0x51
lea edi, [esi + 0x39cc]
mov ecx, edi
call fcn.100751f0
mov ecx, edi
mov dword [ebp - 0xa0], 0
mov dword [ebp - 0x90], 0
mov dword [ebp - 0x8c], 0xf
mov byte [ebp - 0xa0], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10037860
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0xa0]
call fcn.1007b200
mov byte [ebp - 4], 0x53
mov eax, dword [esi + 0x2308]
mov dword [ebp - 0x2c], 0xea23c22e
mov dword [ebp - 0x28], 0xb8b001d0
mov dword [ebp - 0x24], 0xe66cc171
mov word [ebp - 0x20], 0x77c2
test al, 1
jne 0x100378ea
or eax, 1
mov dword [esi + 0x2308], eax
mov byte [ebp - 4], 0x54
xorps xmm0, xmm0
movlpd qword [ebp - 0x38], xmm0
mov edx, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x38]
mov byte [esi + 0x3b7e], 1
mov al, byte [ebp + ecx - 0x2c]
mov byte [ecx + esi + 0x3b70], al
add ecx, 1
adc edx, 0
jne 0x100378d9
cmp ecx, 0xe
jb 0x100378c1
push 0x10094230
call fcn.1007e9d6
add esp, 4
mov byte [ebp - 4], 0x53
lea edi, [esi + 0x3b70]
mov ecx, edi
call fcn.10075250
mov ecx, edi
mov dword [ebp - 0x70], 0
mov dword [ebp - 0x60], 0
mov dword [ebp - 0x5c], 0xf
mov byte [ebp - 0x70], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10037915
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x70]
call fcn.1007b200
push 0x100b5698
lea edx, [ebp - 0x70]
mov byte [ebp - 4], 0x55
lea ecx, [ebp - 0xb8]
call fcn.1007b3a0
add esp, 4
lea ecx, [ebp - 0xa0]
mov byte [ebp - 4], 0x56
push ecx
push eax
push dword [ebp - 0x14]
lea ecx, [ebp - 0x88]
call fcn.1007d000
sub esp, 0x18
mov byte [ebp - 4], 0x57
mov ecx, esp
mov dword [ebp - 0x34], esp
lea edx, [ebp - 0x88]
push 0x100b58e0
call fcn.1007b3a0
add esp, 4
mov byte [ebp - 4], 0x58
movaps xmm0, xmmword [0x100a5ee0]
mov eax, dword [esi + 0x482c]
mov byte [ebp - 0x44], 1
movups xmmword [ebp - 0x54], xmm0
test al, 1
jne 0x100379e9
or eax, 1
mov dword [esi + 0x482c], eax
mov byte [ebp - 4], 0x59
xorps xmm0, xmm0
movlpd qword [ebp - 0x24], xmm0
mov edx, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x24]
mov byte [esi + 0x162d], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x54]
mov byte [esi + ecx + 0x161c], al
add ecx, 1
adc edx, 0
jne 0x100379d8
cmp ecx, 0x11
jb 0x100379c0
push 0x10094280
call fcn.1007e9d6
add esp, 4
mov byte [ebp - 4], 0x58
lea edi, [esi + 0x161c]
mov ecx, edi
call fcn.100752b0
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 0x10037a14
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.1007b200
mov ecx, dword [0x100b7338]
mov eax, dword [ecx]
mov byte [ebp - 4], 0x5d
call dword [eax]
mov byte [ebp - 4], 0x5c
mov edx, dword [ebp - 0x74]
cmp edx, 0x10
jb 0x10037a6f
mov ecx, dword [ebp - 0x88]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10037a65
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10037b56
push edx
push ecx
call fcn.1007e91f
add esp, 8
mov byte [ebp - 4], 0x5b
mov edx, dword [ebp - 0xa4]
mov dword [ebp - 0x78], 0
mov dword [ebp - 0x74], 0xf
mov byte [ebp - 0x88], 0
cmp edx, 0x10
jb 0x10037ac2
mov ecx, dword [ebp - 0xb8]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10037ab8
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10037b56
push edx
push ecx
call fcn.1007e91f
add esp, 8
mov byte [ebp - 4], 0x5a
mov edx, dword [ebp - 0x5c]
mov dword [ebp - 0xa8], 0
mov dword [ebp - 0xa4], 0xf
mov byte [ebp - 0xb8], 0
cmp edx, 0x10
jb 0x10037b11
mov ecx, dword [ebp - 0x70]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10037b07
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10037b56
push edx
push ecx
call fcn.1007e91f
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x8c]
mov dword [ebp - 0x60], 0
mov dword [ebp - 0x5c], 0xf
mov byte [ebp - 0x70], 0
cmp edx, 0x10
jb 0x10037b66
mov ecx, dword [ebp - 0xa0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10037b5c
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x10037b5c
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.1007e91f
add esp, 8
mov ecx, dword [0x100bbd6c]
mov edx, 0x100b5898
cmp dword [0x100b58ac], 0x10
push 0x100bcf38
cmovae edx, dword [0x100b5898]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x1003802c
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x12c]
mov dword [ebp - 0x18], 0x8941f5c7
mov dword [ebp - 0x14], 0x9314081f
push 0x100bcf38
test al, 1
jne 0x10037c0c
or eax, 1
mov dword [esi + 0x12c], eax
mov dword [ebp - 4], 0x5e
xorps xmm0, xmm0
movlpd qword [ebp - 0x38], xmm0
mov edx, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x38]
mov byte [esi + 0x4294], 1
nop
mov al, byte [ebp + ecx - 0x18]
mov byte [esi + ecx + 0x428c], al
add ecx, 1
adc edx, 0
jne 0x10037bf8
cmp ecx, 8
jb 0x10037be0
push 0x10094050
call fcn.1007e9d6
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x428c]
mov ecx, edi
call fcn.10075010
sub esp, 0x18
mov ecx, edi
mov edx, esp
mov dword [ebp - 0x14], esp
lea ebx, [ecx + 1]
mov dword [edx], 0
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0xf
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10037c40
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.1007b200
mov dword [ebp - 4], 0x5f
mov eax, dword [esi + 0x2684]
mov dword [ebp - 0x20], 0xf908ea89
test al, 1
jne 0x10037cb9
or eax, 1
mov dword [esi + 0x2684], eax
mov byte [ebp - 4], 0x60
xorps xmm0, xmm0
movlpd qword [ebp - 0x38], xmm0
mov edx, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x38]
mov byte [esi + 0x2250], 1
nop dword [eax]
mov al, byte [ebp + ecx - 0x20]
mov byte [esi + ecx + 0x224c], al
add ecx, 1
adc edx, 0
jne 0x10037ca8
cmp ecx, 4
jb 0x10037c90
push 0x100940a0
call fcn.1007e9d6
add esp, 4
mov byte [ebp - 4], 0x5f
lea edi, [esi + 0x224c]
mov ecx, edi
call fcn.10075070
mov ecx, edi
mov dword [ebp - 0x70], 0
mov dword [ebp - 0x60], 0
mov dword [ebp - 0x5c], 0xf
mov byte [ebp - 0x70], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10037ce4
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x70]
call fcn.1007b200
mov byte [ebp - 4], 0x61
mov eax, dword [esi + 0x1e30]
mov dword [ebp - 0x2c], 0x9045e080
mov dword [ebp - 0x28], 0xbc08510a
mov dword [ebp - 0x24], 0x9c0ae3df
mov word [ebp - 0x20], 0x2718
test al, 1
jne 0x10037d6b
or eax, 1
mov dword [esi + 0x1e30], eax
mov byte [ebp - 4], 0x62
xorps xmm0, xmm0
movlpd qword [ebp - 0x38], xmm0
mov edx, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x38]
mov byte [esi + 0x3686], 1
mov al, byte [ebp + ecx - 0x2c]
mov byte [esi + ecx + 0x3678], al
add ecx, 1
adc edx, 0
jne 0x10037d5a
cmp ecx, 0xe
jb 0x10037d42
push 0x100940f0
call fcn.1007e9d6
add esp, 4
mov byte [ebp - 4], 0x61
lea edi, [esi + 0x3678]
mov ecx, edi
call fcn.100750d0
mov ecx, edi
mov dword [ebp - 0xa0], 0
mov dword [ebp - 0x90], 0
mov dword [ebp - 0x8c], 0xf
mov byte [ebp - 0xa0], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10037da2
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0xa0]
call fcn.1007b200
push 0x100b5880
lea edx, [ebp - 0xa0]
mov byte [ebp - 4], 0x63
lea ecx, [ebp - 0xe8]
call fcn.1007b3a0
add esp, 4
lea ecx, [ebp - 0x70]
mov byte [ebp - 4], 0x64
push ecx
push eax
push dword [ebp - 0x14]
lea ecx, [ebp - 0xd0]
call fcn.1007d000
sub esp, 0x18
mov byte [ebp - 4], 0x65
mov ecx, esp
mov dword [ebp - 0x34], esp
lea edx, [ebp - 0xd0]
push 0x100b58e0
call fcn.1007b3a0
add esp, 4
mov byte [ebp - 4], 0x66
movaps xmm0, xmmword [0x100a5f90]
mov eax, dword [esi + 0x4a90]
mov byte [ebp - 0x44], 0xaf
movups xmmword [ebp - 0x54], xmm0
test al, 1
jne 0x10037e79
or eax, 1
mov dword [esi + 0x4a90], eax
mov byte [ebp - 4], 0x67
xorps xmm0, xmm0
movlpd qword [ebp - 0x24], xmm0
mov edx, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x24]
mov byte [esi + 0x3639], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x54]
mov byte [esi + ecx + 0x3628], al
add ecx, 1
adc edx, 0
jne 0x10037e68
cmp ecx, 0x11
jb 0x10037e50
push 0x10094140
call fcn.1007e9d6
add esp, 4
mov byte [ebp - 4], 0x66
lea esi, [esi + 0x3628]
mov ecx, esi
call fcn.10075130
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 0x10037ea4
sub ecx, edi
push ecx
push esi
mov ecx, edx
call fcn.1007b200
mov ecx, dword [0x100b7338]
mov eax, dword [ecx]
mov byte [ebp - 4], 0x6b
call dword [eax]
mov byte [ebp - 4], 0x6a
mov edx, dword [ebp - 0xbc]
cmp edx, 0x10
jb 0x10037f02
mov ecx, dword [ebp - 0xd0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10037ef8
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10037ff8
push edx
push ecx
call fcn.1007e91f
add esp, 8
mov byte [ebp - 4], 0x69
mov edx, dword [ebp - 0xd4]
mov dword [ebp - 0xc0], 0
mov dword [ebp - 0xbc], 0xf
mov byte [ebp - 0xd0], 0
cmp edx, 0x10
jb 0x10037f5b
mov ecx, dword [ebp - 0xe8]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10037f51
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10037ff8
push edx
push ecx
call fcn.1007e91f
add esp, 8
mov byte [ebp - 4], 0x68
mov edx, dword [ebp - 0x8c]
mov dword [ebp - 0xd8], 0
mov dword [ebp - 0xd4], 0xf
mov byte [ebp - 0xe8], 0
cmp edx, 0x10
jb 0x10037fb0
mov ecx, dword [ebp - 0xa0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10037fa6
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10037ff8
push edx
push ecx
call fcn.1007e91f
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x5c]
mov dword [ebp - 0x90], 0
mov dword [ebp - 0x8c], 0xf
mov byte [ebp - 0xa0], 0
cmp edx, 0x10
jb 0x10038008
mov ecx, dword [ebp - 0x70]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10037ffe
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x10037ffe
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.1007e91f
add esp, 8
mov ecx, dword [0x100bbd6c]
mov edx, 0x100b5898
cmp dword [0x100b58ac], 0x10
push 0x100bcf38
cmovae edx, dword [0x100b5898]
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.1007dff9
mov esp, ebp
pop ebp
ret