Function at 0x10019330
Capabilities:
Contain obfuscated stackstrings

Disassembly:
mov eax, 0x2c30
call fcn.10026f30
mov eax, dword [0x100695e8]
xor eax, esp
mov dword [esp + 0x2c2c], eax
mov eax, dword [esp + 0x2c3c]
push ebx
push ebp
push esi
mov esi, dword [esp + 0x2c4c]
push edi
mov dword [0x1006af90], eax
mov eax, dword [esp + 0x2c48]
push 0x3ff
mov dword [0x1006af94], eax
lea eax, [esp + 0x1841]
push 0
push eax
mov dword [0x1006af8c], esi
mov byte [esp + 0x1848], 0
call fcn.100275b0
mov edi, dword [sym.imp.KERNEL32.dll_lstrcpyA]
mov ebx, dword [sym.imp.KERNEL32.dll_GlobalFree]
add esp, 0xc
test esi, esi
je 0x100193c7
mov ebp, dword [esi]
test ebp, ebp
je 0x100193c7
lea eax, [ebp + 4]
push eax
lea eax, [esp + 0x1840]
push eax
call edi
mov eax, dword [0x1006af8c]
mov ecx, dword [ebp]
push ebp
mov dword [eax], ecx
call ebx
mov esi, dword [0x1006af8c]
push 0x3ff
lea eax, [esp + 0x2441]
push 0
push eax
mov byte [esp + 0x2448], 0
call fcn.100275b0
add esp, 0xc
test esi, esi
je 0x10019411
mov ebp, dword [esi]
test ebp, ebp
je 0x10019411
lea eax, [ebp + 4]
push eax
lea eax, [esp + 0x2440]
push eax
call edi
mov eax, dword [0x1006af8c]
mov ecx, dword [ebp]
push ebp
mov dword [eax], ecx
call ebx
mov esi, dword [0x1006af8c]
push 0x3ff
lea eax, [esp + 0x441]
push 0
push eax
mov byte [esp + 0x448], 0
call fcn.100275b0
add esp, 0xc
test esi, esi
je 0x1001945b
mov ebp, dword [esi]
test ebp, ebp
je 0x1001945b
lea eax, [ebp + 4]
push eax
lea eax, [esp + 0x440]
push eax
call edi
mov eax, dword [0x1006af8c]
mov ecx, dword [ebp]
push ebp
mov dword [eax], ecx
call ebx
mov esi, dword [0x1006af8c]
push 0x3ff
lea eax, [esp + 0xc41]
push 0
push eax
mov byte [esp + 0xc48], 0
call fcn.100275b0
add esp, 0xc
test esi, esi
je 0x100194a5
mov ebp, dword [esi]
test ebp, ebp
je 0x100194a5
lea eax, [ebp + 4]
push eax
lea eax, [esp + 0xc40]
push eax
call edi
mov eax, dword [0x1006af8c]
mov ecx, dword [ebp]
push ebp
mov dword [eax], ecx
call ebx
mov esi, dword [0x1006af8c]
push 0x3ff
lea eax, [esp + 0x841]
push 0
push eax
mov byte [esp + 0x848], 0
call fcn.100275b0
add esp, 0xc
test esi, esi
je 0x100194ef
mov ebp, dword [esi]
test ebp, ebp
je 0x100194ef
lea eax, [ebp + 4]
push eax
lea eax, [esp + 0x840]
push eax
call edi
mov eax, dword [0x1006af8c]
mov ecx, dword [ebp]
push ebp
mov dword [eax], ecx
call ebx
mov esi, dword [0x1006af8c]
push 0x3ff
lea eax, [esp + 0x41]
push 0
push eax
mov byte [esp + 0x48], 0
call fcn.100275b0
add esp, 0xc
test esi, esi
je 0x10019530
mov ebp, dword [esi]
test ebp, ebp
je 0x10019530
lea eax, [ebp + 4]
push eax
lea eax, [esp + 0x40]
push eax
call edi
mov eax, dword [0x1006af8c]
mov ecx, dword [ebp]
push ebp
mov dword [eax], ecx
call ebx
mov esi, dword [0x1006af8c]
push 0x3ff
lea eax, [esp + 0x2841]
push 0
push eax
mov byte [esp + 0x2848], 0
call fcn.100275b0
add esp, 0xc
test esi, esi
je 0x1001957a
mov ebp, dword [esi]
test ebp, ebp
je 0x1001957a
lea eax, [ebp + 4]
push eax
lea eax, [esp + 0x2840]
push eax
call edi
mov eax, dword [0x1006af8c]
mov ecx, dword [ebp]
push ebp
mov dword [eax], ecx
call ebx
mov esi, dword [0x1006af8c]
push 0x3ff
lea eax, [esp + 0x1441]
push 0
push eax
mov byte [esp + 0x1448], 0
call fcn.100275b0
add esp, 0xc
test esi, esi
je 0x100195c4
mov ebp, dword [esi]
test ebp, ebp
je 0x100195c4
lea eax, [ebp + 4]
push eax
lea eax, [esp + 0x1440]
push eax
call edi
mov eax, dword [0x1006af8c]
mov ecx, dword [ebp]
push ebp
mov dword [eax], ecx
call ebx
mov esi, dword [0x1006af8c]
push 0x3ff
lea eax, [esp + 0x1041]
push 0
push eax
mov byte [esp + 0x1048], 0
call fcn.100275b0
add esp, 0xc
test esi, esi
je 0x1001960e
mov ebp, dword [esi]
test ebp, ebp
je 0x1001960e
lea eax, [ebp + 4]
push eax
lea eax, [esp + 0x1040]
push eax
call edi
mov eax, dword [0x1006af8c]
mov ecx, dword [ebp]
push ebp
mov dword [eax], ecx
call ebx
mov esi, dword [0x1006af8c]
push 0x3ff
lea eax, [esp + 0x1c41]
push 0
push eax
mov byte [esp + 0x1c48], 0
call fcn.100275b0
add esp, 0xc
test esi, esi
je 0x10019658
mov ebp, dword [esi]
test ebp, ebp
je 0x10019658
lea eax, [ebp + 4]
push eax
lea eax, [esp + 0x1c40]
push eax
call edi
mov eax, dword [0x1006af8c]
mov ecx, dword [ebp]
push ebp
mov dword [eax], ecx
call ebx
mov esi, dword [0x1006af8c]
push 0x3ff
lea eax, [esp + 0x2041]
push 0
push eax
mov byte [esp + 0x2048], 0
call fcn.100275b0
add esp, 0xc
test esi, esi
je 0x1001969b
mov esi, dword [esi]
test esi, esi
je 0x1001969b
lea eax, [esi + 4]
push eax
lea eax, [esp + 0x2040]
push eax
call edi
mov eax, dword [0x1006af8c]
mov ecx, dword [esi]
push esi
mov dword [eax], ecx
call ebx
mov dword [esp + 0x2b], 0x75747261
mov word [esp + 0x2f], 0x70
mov word [esp + 0x29], 0x7473
mov dword [esp + 0x24], 0x656d6f68
mov byte [esp + 0x28], 0x2b
lea ecx, [esp + 0x24]
lea eax, [esp + 0x183c]
lea esp, [esp]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x100196f0
test dl, dl
je 0x100196ec
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x100196f0
add eax, 2
add ecx, 2
test dl, dl
jne 0x100196d0
xor eax, eax
jmp 0x100196f5
sbb eax, eax
or eax, 1
test eax, eax
sete bl
mov byte [esp + 0x14], bl
mov word [esp + 0x31], 0x68
mov dword [esp + 0x2c], 0x72616573
mov dword [esp + 0x28], 0x5f746c75
mov dword [esp + 0x24], 0x61666564
mov byte [esp + 0x30], 0x63
lea ecx, [esp + 0x24]
lea eax, [esp + 0x243c]
lea ecx, [ecx]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x10019750
test dl, dl
je 0x1001974c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x10019750
add eax, 2
add ecx, 2
test dl, dl
jne 0x10019730
xor eax, eax
jmp 0x10019755
sbb eax, eax
or eax, 1
test eax, eax
sete al
mov byte [esp + 0x18], al
test bl, bl
jne 0x1001976a
test al, al
je 0x10019986
call fcn.10008750
lea eax, [esp + 0x1c]
push eax
push ecx
lea eax, [esp + 0x1c44]
mov ecx, esp
push eax
mov dword [esp + 0x44], 0xf
mov dword [esp + 0x40], 0
mov byte [esp + 0x30], 0
call fcn.1000b510
sub esp, 0x18
lea eax, [esp + 0x105c]
mov ecx, esp
push eax
call fcn.1000e840
sub esp, 0x18
lea eax, [esp + 0x1474]
mov ecx, esp
push eax
call fcn.1000e840
sub esp, 0x18
lea eax, [esp + 0x8c]
mov ecx, esp
push eax
call fcn.1000e840
sub esp, 0x18
lea eax, [esp + 0x8a4]
mov ecx, esp
push eax
call fcn.1000e840
sub esp, 0x18
lea eax, [esp + 0xcbc]
mov ecx, esp
push eax
call fcn.1000e840
sub esp, 0x18
lea eax, [esp + 0x4d4]
mov ecx, esp
push eax
call fcn.1000e840
mov esi, dword [esp + 0xb0]
mov edi, dword [esp + 0xac]
push esi
push edi
call fcn.10009a70
add esp, 0xa0
call section..tor4i
cmp eax, 0xf
je 0x100198a8
lea eax, [esp + 0x20]
push eax
sub esp, 0x18
lea eax, [esp + 0x1058]
mov ecx, esp
push eax
call fcn.1000e840
sub esp, 0x18
lea eax, [esp + 0x1470]
mov ecx, esp
push eax
call fcn.1000e840
sub esp, 0x18
lea eax, [esp + 0x88]
mov ecx, esp
push eax
call fcn.1000e840
sub esp, 0x18
lea eax, [esp + 0x8a0]
mov ecx, esp
push eax
call fcn.1000e840
sub esp, 0x18
lea eax, [esp + 0xcb8]
mov ecx, esp
push eax
call fcn.1000e840
sub esp, 0x18
lea eax, [esp + 0x4d0]
mov ecx, esp
push eax
call fcn.1000e840
push esi
push edi
call fcn.1000a890
add esp, 0x9c
lea eax, [esp + 0x24]
push eax
sub esp, 0x18
lea eax, [esp + 0x2058]
mov ecx, esp
push eax
call fcn.1000e840
sub esp, 0x18
lea eax, [esp + 0x1070]
mov ecx, esp
push eax
call fcn.1000e840
sub esp, 0x18
lea eax, [esp + 0x1488]
mov ecx, esp
push eax
call fcn.1000e840
sub esp, 0x18
lea eax, [esp + 0x28a0]
mov ecx, esp
push eax
call fcn.1000e840
sub esp, 0x18
lea eax, [esp + 0xb8]
mov ecx, esp
push eax
call fcn.1000e840
sub esp, 0x18
lea eax, [esp + 0x8d0]
mov ecx, esp
push eax
call fcn.1000e840
sub esp, 0x18
lea eax, [esp + 0xce8]
mov ecx, esp
push eax
call fcn.1000e840
sub esp, 0x18
lea eax, [esp + 0x500]
mov ecx, esp
push eax
call fcn.1000e840
push esi
push edi
call fcn.10008a50
add esp, 0xb4
mov ecx, esp
push 0xffffffffffffffff
push 0
lea eax, [esp + 0x44]
mov dword [ecx + 0x14], 0xf
mov dword [ecx + 0x10], 0
push eax
mov byte [ecx], 0
call fcn.1000e3d0
call fcn.10016030
add esp, 0x18
cmp dword [esp + 0x38], 0x10
jb 0x10019986
push dword [esp + 0x24]
call fcn.1002501c
add esp, 4
mov ecx, dword [esp + 0x2c3c]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.10026aaf
add esp, 0x2c30
ret