Function at 0x1003d8a0
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1007bd02
mov eax, dword fs:[0]
push eax
sub esp, 0xe4
mov eax, dword [0x100a700c]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov eax, dword fs:[0x2c]
mov ecx, dword [0x100a9268]
push 0x100ac6c0
push 0
push 0
mov esi, dword [eax + ecx*4]
mov dword [ebp - 0x2c], 0xb91ca20f
mov eax, dword [esi + 0x4c0c]
test al, 1
jne 0x1003d94c
or eax, 1
mov dword [esi + 0x4c0c], 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 + 0xb00], 1
nop dword [eax]
mov al, byte [ebp + ecx - 0x2c]
mov byte [ecx + esi + 0xafc], al
add ecx, 1
adc edx, 0
jne 0x1003d938
cmp ecx, 4
jb 0x1003d920
push 0x1008c060
call fcn.10074356
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0xafc]
mov ecx, edi
call fcn.1006af10
mov ecx, edi
mov dword [ebp - 0x78], 0
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 0x1003d977
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x78]
call fcn.10070da0
mov dword [ebp - 4], 1
movaps xmm0, xmmword [0x10099190]
mov eax, dword [esi + 0x1e94]
mov word [ebp - 0x38], 0xf44c
mov byte [ebp - 0x36], 0x21
movups xmmword [ebp - 0x48], xmm0
test al, 1
jne 0x1003d9fb
or eax, 1
mov dword [esi + 0x1e94], 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 + 0x2b7], 1
mov al, byte [ebp + ecx - 0x48]
mov byte [ecx + esi + 0x2a4], al
add ecx, 1
adc edx, 0
jne 0x1003d9ea
cmp ecx, 0x13
jb 0x1003d9d2
push 0x1008c0b0
call fcn.10074356
add esp, 4
mov byte [ebp - 4], 1
lea edi, [esi + 0x2a4]
mov ecx, edi
call fcn.1006af70
mov ecx, edi
mov dword [ebp - 0x60], 0
mov dword [ebp - 0x50], 0
mov dword [ebp - 0x4c], 0xf
mov byte [ebp - 0x60], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1003da26
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x60]
call fcn.10070da0
push 0x100a8494
lea edx, [ebp - 0x60]
mov byte [ebp - 4], 3
lea ecx, [ebp - 0xa8]
call fcn.10070f40
add esp, 4
lea ecx, [ebp - 0x78]
mov byte [ebp - 4], 4
push ecx
push eax
push dword [ebp - 0x29]
lea ecx, [ebp - 0x90]
call fcn.10072980
sub esp, 0x18
mov byte [ebp - 4], 5
mov ecx, esp
mov dword [ebp - 0x2c], esp
lea edx, [ebp - 0x90]
push 0x100a88c8
call fcn.10070f40
add esp, 4
mov byte [ebp - 4], 6
movaps xmm0, xmmword [0x10098700]
mov eax, dword [esi + 0x2e18]
mov byte [ebp - 0x38], 0x29
movups xmmword [ebp - 0x48], xmm0
test al, 1
jne 0x1003daf9
or eax, 1
mov dword [esi + 0x2e18], 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 + 0x3a01], 1
nop dword [eax + eax]
mov al, byte [ebp + ecx - 0x48]
mov byte [ecx + esi + 0x39f0], al
add ecx, 1
adc edx, 0
jne 0x1003dae8
cmp ecx, 0x11
jb 0x1003dad0
push 0x1008c100
call fcn.10074356
add esp, 4
mov byte [ebp - 4], 6
lea edi, [esi + 0x39f0]
mov ecx, edi
call fcn.1006afd0
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 0x1003db24
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10070da0
mov ecx, dword [0x100b0a28]
mov eax, dword [ecx]
mov byte [ebp - 4], 5
call dword [eax + 4]
mov byte [ebp - 4], 4
mov edx, dword [ebp - 0x7c]
cmp edx, 0x10
jb 0x1003db80
mov ecx, dword [ebp - 0x90]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003db76
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003dc61
push edx
push ecx
call fcn.1007429f
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 0x1003dbd3
mov ecx, dword [ebp - 0xa8]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003dbc9
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003dc61
push edx
push ecx
call fcn.1007429f
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 0x1003dc22
mov ecx, dword [ebp - 0x60]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003dc18
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003dc61
push edx
push ecx
call fcn.1007429f
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 0x1003dc71
mov ecx, dword [ebp - 0x78]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003dc67
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x1003dc67
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.1007429f
add esp, 8
mov ecx, dword [0x100ab520]
mov edx, 0x100a8880
cmp dword [0x100a8894], 0x10
push 0x100ac6c0
cmovae edx, dword [0x100a8880]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x1003ee9c
mov ecx, 0x100ac6c0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1003dca5
sub ecx, edx
cmp ecx, 0x20
jae 0x1003dcbc
cmp ecx, 5
ja 0x1003ee9c
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x42ac]
mov dword [ebp - 0x24], 0xf5e9bdcb
mov dword [ebp - 0x20], 0xda362528
mov byte [ebp - 0x1c], 0xa3
push 0x100ac6c0
test al, 1
jne 0x1003dd3c
or eax, 1
mov dword [esi + 0x42ac], 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 + 0x4729], 1
nop dword [eax]
mov al, byte [ebp + ecx - 0x24]
mov byte [ecx + esi + 0x4720], al
add ecx, 1
adc edx, 0
jne 0x1003dd28
cmp ecx, 9
jb 0x1003dd10
push 0x1008bf20
call fcn.10074356
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x4720]
mov ecx, edi
call fcn.1006ad90
sub esp, 0x18
mov ecx, edi
mov edx, esp
mov dword [ebp - 0x20], 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 0x1003dd70
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10070da0
mov dword [ebp - 4], 9
mov eax, dword [esi + 0xeb4]
mov dword [ebp - 0x2c], 0x85a0a285
test al, 1
jne 0x1003dde9
or eax, 1
mov dword [esi + 0xeb4], 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 + 0x1518], 1
nop dword [eax]
mov al, byte [ebp + ecx - 0x2c]
mov byte [ecx + esi + 0x1514], al
add ecx, 1
adc edx, 0
jne 0x1003ddd8
cmp ecx, 4
jb 0x1003ddc0
push 0x1008bf70
call fcn.10074356
add esp, 4
mov byte [ebp - 4], 9
lea edi, [esi + 0x1514]
mov ecx, edi
call fcn.1006adf0
mov ecx, edi
mov dword [ebp - 0x78], 0
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 0x1003de14
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x78]
call fcn.10070da0
mov byte [ebp - 4], 0xb
movaps xmm0, xmmword [0x10099b60]
mov eax, dword [esi + 0x988]
mov word [ebp - 0x38], 0xf4c6
mov byte [ebp - 0x36], 0x9d
movups xmmword [ebp - 0x48], xmm0
test al, 1
jne 0x1003de99
or eax, 1
mov dword [esi + 0x988], eax
mov byte [ebp - 4], 0xc
xorps xmm0, xmm0
movlpd qword [ebp - 0x18], xmm0
mov edx, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x18]
mov byte [esi + 0x27ff], 1
nop dword [eax]
mov al, byte [ebp + ecx - 0x48]
mov byte [ecx + esi + 0x27ec], al
add ecx, 1
adc edx, 0
jne 0x1003de88
cmp ecx, 0x13
jb 0x1003de70
push 0x1008bfc0
call fcn.10074356
add esp, 4
mov byte [ebp - 4], 0xb
lea edi, [esi + 0x27ec]
mov ecx, edi
call fcn.1006ae50
mov ecx, edi
mov dword [ebp - 0x60], 0
mov dword [ebp - 0x50], 0
mov dword [ebp - 0x4c], 0xf
mov byte [ebp - 0x60], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1003dec4
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x60]
call fcn.10070da0
push 0x100a8494
lea edx, [ebp - 0x60]
mov byte [ebp - 4], 0xd
lea ecx, [ebp - 0xa8]
call fcn.10070f40
add esp, 4
lea ecx, [ebp - 0x78]
mov byte [ebp - 4], 0xe
push ecx
push eax
push dword [ebp - 0x1f]
lea ecx, [ebp - 0x90]
call fcn.10072980
sub esp, 0x18
mov byte [ebp - 4], 0xf
mov ecx, esp
mov dword [ebp - 0x2c], esp
lea edx, [ebp - 0x90]
push 0x100a88c8
call fcn.10070f40
add esp, 4
mov byte [ebp - 4], 0x10
movaps xmm0, xmmword [0x100994b0]
mov eax, dword [esi + 0x13c4]
mov byte [ebp - 0x38], 0xa3
movups xmmword [ebp - 0x48], xmm0
test al, 1
jne 0x1003df99
or eax, 1
mov dword [esi + 0x13c4], eax
mov byte [ebp - 4], 0x11
xorps xmm0, xmm0
movlpd qword [ebp - 0x18], xmm0
mov edx, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x18]
mov byte [esi + 0x925], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x48]
mov byte [ecx + esi + 0x914], al
add ecx, 1
adc edx, 0
jne 0x1003df88
cmp ecx, 0x11
jb 0x1003df70
push 0x1008c010
call fcn.10074356
add esp, 4
mov byte [ebp - 4], 0x10
lea edi, [esi + 0x914]
mov ecx, edi
call fcn.1006aeb0
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 0x1003dfc4
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10070da0
mov ecx, dword [0x100b0a28]
mov eax, dword [ecx]
mov byte [ebp - 4], 0x15
call dword [eax]
mov byte [ebp - 4], 0x14
mov edx, dword [ebp - 0x7c]
cmp edx, 0x10
jb 0x1003e01f
mov ecx, dword [ebp - 0x90]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003e015
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003e100
push edx
push ecx
call fcn.1007429f
add esp, 8
mov byte [ebp - 4], 0x13
mov edx, dword [ebp - 0x94]
mov dword [ebp - 0x80], 0
mov dword [ebp - 0x7c], 0xf
mov byte [ebp - 0x90], 0
cmp edx, 0x10
jb 0x1003e072
mov ecx, dword [ebp - 0xa8]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003e068
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003e100
push edx
push ecx
call fcn.1007429f
add esp, 8
mov byte [ebp - 4], 0x12
mov edx, dword [ebp - 0x4c]
mov dword [ebp - 0x98], 0
mov dword [ebp - 0x94], 0xf
mov byte [ebp - 0xa8], 0
cmp edx, 0x10
jb 0x1003e0c1
mov ecx, dword [ebp - 0x60]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003e0b7
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003e100
push edx
push ecx
call fcn.1007429f
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 0x1003e110
mov ecx, dword [ebp - 0x78]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003e106
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x1003e106
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.1007429f
add esp, 8
mov ecx, dword [0x100ab520]
mov edx, 0x100a8880
cmp dword [0x100a8894], 0x10
push 0x100ac6c0
cmovae edx, dword [0x100a8880]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x1003ee9c
mov ecx, 0x100ac6c0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1003e144
sub ecx, edx
cmp ecx, 0x20
jae 0x1003e15b
cmp ecx, 5
ja 0x1003ee9c
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x4314]
mov dword [ebp - 0x18], 0xb9e131a7
mov dword [ebp - 0x14], 0x452654b9
push 0x100ac6c0
test al, 1
jne 0x1003e1dc
or eax, 1
mov dword [esi + 0x4314], eax
mov dword [ebp - 4], 0x16
xorps xmm0, xmm0
movlpd qword [ebp - 0x24], xmm0
mov edx, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x24]
mov byte [esi + 0x2e4c], 1
nop dword [eax + eax]
mov al, byte [ebp + ecx - 0x18]
mov byte [esi + ecx + 0x2e44], al
add ecx, 1
adc edx, 0
jne 0x1003e1c8
cmp ecx, 8
jb 0x1003e1b0
push 0x1008bde0
call fcn.10074356
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x2e44]
mov ecx, edi
call fcn.1006ac10
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 0x1003e210
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10070da0
mov dword [ebp - 4], 0x17
mov eax, dword [esi + 0x25e8]
mov dword [ebp - 0x2c], 0xc9a82ee9
test al, 1
jne 0x1003e289
or eax, 1
mov dword [esi + 0x25e8], eax
mov byte [ebp - 4], 0x18
xorps xmm0, xmm0
movlpd qword [ebp - 0x24], xmm0
mov edx, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x24]
mov byte [esi + 0x2500], 1
nop dword [eax]
mov al, byte [ebp + ecx - 0x2c]
mov byte [esi + ecx + 0x24fc], al
add ecx, 1
adc edx, 0
jne 0x1003e278
cmp ecx, 4
jb 0x1003e260
push 0x1008be30
call fcn.10074356
add esp, 4
mov byte [ebp - 4], 0x17
lea edi, [esi + 0x24fc]
mov ecx, edi
call fcn.1006ac70
mov ecx, edi
mov dword [ebp - 0x78], 0
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 0x1003e2b4
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x78]
call fcn.10070da0
mov byte [ebp - 4], 0x19
movaps xmm0, xmmword [0x100991d0]
mov eax, dword [esi + 0x1044]
mov word [ebp - 0x38], 0x78aa
mov byte [ebp - 0x36], 0x95
movups xmmword [ebp - 0x48], xmm0
test al, 1
jne 0x1003e339
or eax, 1
mov dword [esi + 0x1044], eax
mov byte [ebp - 4], 0x1a
xorps xmm0, xmm0
movlpd qword [ebp - 0x24], xmm0
mov edx, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x24]
mov byte [esi + 0x1577], 1
nop dword [eax]
mov al, byte [ebp + ecx - 0x48]
mov byte [esi + ecx + 0x1564], al
add ecx, 1
adc edx, 0
jne 0x1003e328
cmp ecx, 0x13
jb 0x1003e310
push 0x1008be80
call fcn.10074356
add esp, 4
mov byte [ebp - 4], 0x19
lea edi, [esi + 0x1564]
mov ecx, edi
call fcn.1006acd0
mov ecx, edi
mov dword [ebp - 0x60], 0
mov dword [ebp - 0x50], 0
mov dword [ebp - 0x4c], 0xf
mov byte [ebp - 0x60], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1003e364
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x60]
call fcn.10070da0
push 0x100a8494
lea edx, [ebp - 0x60]
mov byte [ebp - 4], 0x1b
lea ecx, [ebp - 0xa8]
call fcn.10070f40
add esp, 4
lea ecx, [ebp - 0x78]
mov byte [ebp - 4], 0x1c
push ecx
push eax
push dword [ebp - 0x14]
lea ecx, [ebp - 0x90]
call fcn.10072980
sub esp, 0x18
mov byte [ebp - 4], 0x1d
mov ecx, esp
mov dword [ebp - 0x20], esp
lea edx, [ebp - 0x90]
push 0x100a88c8
call fcn.10070f40
add esp, 4
mov byte [ebp - 4], 0x1e
movaps xmm0, xmmword [0x100986c0]
mov eax, dword [esi + 0x25f4]
mov byte [ebp - 0x38], 0xcf
movups xmmword [ebp - 0x48], xmm0
test al, 1
jne 0x1003e439
or eax, 1
mov dword [esi + 0x25f4], eax
mov byte [ebp - 4], 0x1f
xorps xmm0, xmm0
movlpd qword [ebp - 0x30], xmm0
mov edx, dword [ebp - 0x2c]
mov ecx, dword [ebp - 0x30]
mov byte [esi + 0xac5], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x48]
mov byte [esi + ecx + 0xab4], al
add ecx, 1
adc edx, 0
jne 0x1003e428
cmp ecx, 0x11
jb 0x1003e410
push 0x1008bed0
call fcn.10074356
add esp, 4
mov byte [ebp - 4], 0x1e
lea edi, [esi + 0xab4]
mov ecx, edi
call fcn.1006ad30
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 0x1003e464
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10070da0
mov ecx, dword [0x100b0a28]
mov eax, dword [ecx]
mov byte [ebp - 4], 0x23
call dword [eax]
mov byte [ebp - 4], 0x22
mov edx, dword [ebp - 0x7c]
cmp edx, 0x10
jb 0x1003e4bf
mov ecx, dword [ebp - 0x90]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003e4b5
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003e5a0
push edx
push ecx
call fcn.1007429f
add esp, 8
mov byte [ebp - 4], 0x21
mov edx, dword [ebp - 0x94]
mov dword [ebp - 0x80], 0
mov dword [ebp - 0x7c], 0xf
mov byte [ebp - 0x90], 0
cmp edx, 0x10
jb 0x1003e512
mov ecx, dword [ebp - 0xa8]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003e508
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003e5a0
push edx
push ecx
call fcn.1007429f
add esp, 8
mov byte [ebp - 4], 0x20
mov edx, dword [ebp - 0x4c]
mov dword [ebp - 0x98], 0
mov dword [ebp - 0x94], 0xf
mov byte [ebp - 0xa8], 0
cmp edx, 0x10
jb 0x1003e561
mov ecx, dword [ebp - 0x60]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003e557
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003e5a0
push edx
push ecx
call fcn.1007429f
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 0x1003e5b0
mov ecx, dword [ebp - 0x78]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003e5a6
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x1003e5a6
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.1007429f
add esp, 8
mov ecx, dword [0x100ab520]
mov edx, 0x100a8880
cmp dword [0x100a8894], 0x10
push 0x100ac6c0
cmovae edx, dword [0x100a8880]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x1003ee9c
mov ecx, 0x100ac6c0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1003e5e4
sub ecx, edx
cmp ecx, 0x20
jae 0x1003e5fb
cmp ecx, 5
ja 0x1003ee9c
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x37c]
mov dword [ebp - 0x2c], 0xfbd2b22f
push 0x100ac6c0
push 0
push 0
test al, 1
jne 0x1003e67c
or eax, 1
mov dword [esi + 0x37c], eax
mov dword [ebp - 4], 0x24
xorps xmm0, xmm0
movlpd qword [ebp - 0x18], xmm0
mov edx, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x18]
mov byte [esi + 0xe74], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x2c]
mov byte [esi + ecx + 0xe70], al
add ecx, 1
adc edx, 0
jne 0x1003e668
cmp ecx, 4
jb 0x1003e650
push 0x1008bcf0
call fcn.10074356
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0xe70]
mov ecx, edi
call fcn.1006aaf0
mov ecx, edi
mov dword [ebp - 0x78], 0
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 0x1003e6a7
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x78]
call fcn.10070da0
mov dword [ebp - 4], 0x25
movaps xmm0, xmmword [0x10098d90]
mov eax, dword [esi + 0x85c]
movups xmmword [ebp - 0x48], xmm0
test al, 1
jne 0x1003e729
or eax, 1
mov dword [esi + 0x85c], eax
mov byte [ebp - 4], 0x26
xorps xmm0, xmm0
movlpd qword [ebp - 0x18], xmm0
mov edx, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x18]
mov byte [esi + 0x21cc], 1
nop dword [eax + eax]
mov al, byte [ebp + ecx - 0x48]
mov byte [esi + ecx + 0x21bc], al
add ecx, 1
adc edx, 0
jne 0x1003e718
cmp ecx, 0x10
jb 0x1003e700
push 0x1008bd40
call fcn.10074356
add esp, 4
mov byte [ebp - 4], 0x25
lea edi, [esi + 0x21bc]
mov ecx, edi
call fcn.1006ab50
mov ecx, edi
mov dword [ebp - 0x60], 0
mov dword [ebp - 0x50], 0
mov dword [ebp - 0x4c], 0xf
mov byte [ebp - 0x60], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1003e754
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x60]
call fcn.10070da0
push 0x100a8494
lea edx, [ebp - 0x60]
mov byte [ebp - 4], 0x27
lea ecx, [ebp - 0xa8]
call fcn.10070f40
add esp, 4
lea ecx, [ebp - 0x78]
mov byte [ebp - 4], 0x28
push ecx
push eax
push dword [ebp - 0x14]
lea ecx, [ebp - 0x90]
call fcn.10072980
sub esp, 0x18
mov byte [ebp - 4], 0x29
mov ecx, esp
mov dword [ebp - 0x14], esp
lea edx, [ebp - 0x90]
push 0x100a88c8
call fcn.10070f40
add esp, 4
mov byte [ebp - 4], 0x2a
mov eax, dword [esi + 0x3d10]
mov dword [ebp - 0x34], 0xd5dce938
mov dword [ebp - 0x30], 0x772a732e
mov dword [ebp - 0x2c], 0xd5d9ed38
mov word [ebp - 0x28], 0x722d
mov byte [ebp - 0x26], 0x1d
test al, 1
jne 0x1003e839
or eax, 1
mov dword [esi + 0x3d10], eax
mov byte [ebp - 4], 0x2b
xorps xmm0, xmm0
movlpd qword [ebp - 0x24], xmm0
mov edx, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x24]
mov byte [esi + 0x430b], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x34]
mov byte [esi + ecx + 0x42fc], al
add ecx, 1
adc edx, 0
jne 0x1003e828
cmp ecx, 0xf
jb 0x1003e810
push 0x1008bd90
call fcn.10074356
add esp, 4
mov byte [ebp - 4], 0x2a
lea edi, [esi + 0x42fc]
mov ecx, edi
call fcn.1006abb0
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 0x1003e864
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10070da0
mov ecx, dword [0x100b0a28]
mov eax, dword [ecx]
mov byte [ebp - 4], 0x29
call dword [eax + 4]
mov byte [ebp - 4], 0x28
mov edx, dword [ebp - 0x7c]
cmp edx, 0x10
jb 0x1003e8c0
mov ecx, dword [ebp - 0x90]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003e8b6
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003e9a1
push edx
push ecx
call fcn.1007429f
add esp, 8
mov byte [ebp - 4], 0x27
mov edx, dword [ebp - 0x94]
mov dword [ebp - 0x80], 0
mov dword [ebp - 0x7c], 0xf
mov byte [ebp - 0x90], 0
cmp edx, 0x10
jb 0x1003e913
mov ecx, dword [ebp - 0xa8]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003e909
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003e9a1
push edx
push ecx
call fcn.1007429f
add esp, 8
mov byte [ebp - 4], 0x25
mov edx, dword [ebp - 0x4c]
mov dword [ebp - 0x98], 0
mov dword [ebp - 0x94], 0xf
mov byte [ebp - 0xa8], 0
cmp edx, 0x10
jb 0x1003e962
mov ecx, dword [ebp - 0x60]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003e958
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003e9a1
push edx
push ecx
call fcn.1007429f
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 0x1003e9b1
mov ecx, dword [ebp - 0x78]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003e9a7
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x1003e9a7
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.1007429f
add esp, 8
mov ecx, dword [0x100ab520]
mov edx, 0x100a8880
cmp dword [0x100a8894], 0x10
push 0x100ac6c0
cmovae edx, dword [0x100a8880]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
test eax, eax
je 0x1003ee9c
mov ecx, 0x100ac6c0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1003e9e5
sub ecx, edx
cmp ecx, 0x20
jae 0x1003e9fc
cmp ecx, 5
ja 0x1003ee9c
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x22f4]
mov dword [ebp - 0x18], 0x2719d3bf
mov dword [ebp - 0x14], 0x43567a69
push 0x100ac6c0
test al, 1
jne 0x1003ea7c
or eax, 1
mov dword [esi + 0x22f4], eax
mov dword [ebp - 4], 0x2c
xorps xmm0, xmm0
movlpd qword [ebp - 0x24], xmm0
mov edx, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x24]
mov byte [esi + 0x3708], 1
nop dword [eax]
mov al, byte [ebp + ecx - 0x18]
mov byte [esi + ecx + 0x3700], al
add ecx, 1
adc edx, 0
jne 0x1003ea68
cmp ecx, 8
jb 0x1003ea50
push 0x1008bbb0
call fcn.10074356
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x3700]
mov ecx, edi
call fcn.1006a970
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 0x1003eab0
sub ecx, ebx
push ecx
push edi
mov ecx, edx
call fcn.10070da0
mov dword [ebp - 4], 0x2d
mov eax, dword [esi + 0x33ec]
mov dword [ebp - 0x2c], 0x5750ccf1
test al, 1
jne 0x1003eb29
or eax, 1
mov dword [esi + 0x33ec], eax
mov byte [ebp - 4], 0x2e
xorps xmm0, xmm0
movlpd qword [ebp - 0x24], xmm0
mov edx, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x24]
mov byte [esi + 0x3d80], 1
nop dword [eax]
mov al, byte [ebp + ecx - 0x2c]
mov byte [esi + ecx + 0x3d7c], al
add ecx, 1
adc edx, 0
jne 0x1003eb18
cmp ecx, 4
jb 0x1003eb00
push 0x1008bc00
call fcn.10074356
add esp, 4
mov byte [ebp - 4], 0x2d
lea edi, [esi + 0x3d7c]
mov ecx, edi
call fcn.1006a9d0
mov ecx, edi
mov dword [ebp - 0x78], 0
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 0x1003eb54
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x78]
call fcn.10070da0
mov byte [ebp - 4], 0x2f
movaps xmm0, xmmword [0x10098ab0]
mov eax, dword [esi + 0x1c50]
movups xmmword [ebp - 0x48], xmm0
test al, 1
jne 0x1003ebcb
or eax, 1
mov dword [esi + 0x1c50], eax
mov byte [ebp - 4], 0x30
xorps xmm0, xmm0
movlpd qword [ebp - 0x24], xmm0
mov edx, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x24]
mov byte [esi + 0x93c], 1
mov al, byte [ebp + ecx - 0x48]
mov byte [ecx + esi + 0x92c], al
add ecx, 1
adc edx, 0
jne 0x1003ebba
cmp ecx, 0x10
jb 0x1003eba2
push 0x1008bc50
call fcn.10074356
add esp, 4
mov byte [ebp - 4], 0x2f
lea edi, [esi + 0x92c]
mov ecx, edi
call fcn.1006aa30
mov ecx, edi
mov dword [ebp - 0xc0], 0
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 0x1003ec02
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0xc0]
call fcn.10070da0
push 0x100a8494
lea edx, [ebp - 0xc0]
mov byte [ebp - 4], 0x31
lea ecx, [ebp - 0xf0]
call fcn.10070f40
add esp, 4
lea ecx, [ebp - 0x78]
mov byte [ebp - 4], 0x32
push ecx
push eax
push dword [ebp - 0x14]
lea ecx, [ebp - 0xd8]
call fcn.10072980
sub esp, 0x18
mov byte [ebp - 4], 0x33
mov ecx, esp
mov dword [ebp - 0x20], esp
lea edx, [ebp - 0xd8]
push 0x100a88c8
call fcn.10070f40
add esp, 4
mov byte [ebp - 4], 0x34
mov eax, dword [esi + 0x1a50]
mov dword [ebp - 0x44], 0x795e97e6
mov dword [ebp - 0x40], 0x6d4e6d62
mov dword [ebp - 0x3c], 0x795b93e6
mov word [ebp - 0x38], 0x6c61
mov byte [ebp - 0x36], 0x79
test al, 1
jne 0x1003ece9
or eax, 1
mov dword [esi + 0x1a50], eax
mov byte [ebp - 4], 0x35
xorps xmm0, xmm0
movlpd qword [ebp - 0x30], xmm0
mov edx, dword [ebp - 0x2c]
mov ecx, dword [ebp - 0x30]
mov byte [esi + 0x1787], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x44]
mov byte [ecx + esi + 0x1778], al
add ecx, 1
adc edx, 0
jne 0x1003ecd8
cmp ecx, 0xf
jb 0x1003ecc0
push 0x1008bca0
call fcn.10074356
add esp, 4
mov byte [ebp - 4], 0x34
lea esi, [esi + 0x1778]
mov ecx, esi
call fcn.1006aa90
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 0x1003ed14
sub ecx, edi
push ecx
push esi
mov ecx, edx
call fcn.10070da0
mov ecx, dword [0x100b0a28]
mov eax, dword [ecx]
mov byte [ebp - 4], 0x39
call dword [eax]
mov byte [ebp - 4], 0x38
mov edx, dword [ebp - 0xc4]
cmp edx, 0x10
jb 0x1003ed72
mov ecx, dword [ebp - 0xd8]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003ed68
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003ee68
push edx
push ecx
call fcn.1007429f
add esp, 8
mov byte [ebp - 4], 0x37
mov edx, dword [ebp - 0xdc]
mov dword [ebp - 0xc8], 0
mov dword [ebp - 0xc4], 0xf
mov byte [ebp - 0xd8], 0
cmp edx, 0x10
jb 0x1003edcb
mov ecx, dword [ebp - 0xf0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003edc1
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003ee68
push edx
push ecx
call fcn.1007429f
add esp, 8
mov byte [ebp - 4], 0x36
mov edx, dword [ebp - 0xac]
mov dword [ebp - 0xe0], 0
mov dword [ebp - 0xdc], 0xf
mov byte [ebp - 0xf0], 0
cmp edx, 0x10
jb 0x1003ee20
mov ecx, dword [ebp - 0xc0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003ee16
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003ee68
push edx
push ecx
call fcn.1007429f
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 0x1003ee78
mov ecx, dword [ebp - 0x78]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003ee6e
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x1003ee6e
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.1007429f
add esp, 8
mov ecx, dword [0x100ab520]
mov edx, 0x100a8880
cmp dword [0x100a8894], 0x10
push 0x100ac6c0
cmovae edx, dword [0x100a8880]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.10073979
mov esp, ebp
pop ebp
ret