Function at 0x1002d540
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push 0xffffffffffffffff
push 0x1015be78
mov eax, dword fs:[0]
push eax
sub esp, 0x374
mov eax, dword [0x101b03d4]
xor eax, esp
mov dword [esp + 0x370], eax
push ebx
push ebp
push edi
mov eax, dword [0x101b03d4]
xor eax, esp
push eax
lea eax, [esp + 0x384]
mov dword fs:[0], eax
lea eax, [esp + 0x24]
xor ebx, ebx
mov dword [esp + 0x1c], ebx
mov ecx, eax
mov dword [esp + 0x20], esi
mov dword [esp + 0x34], eax
mov dword [esp + 0x38], ecx
mov ebp, 1
mov dword [esp + 0x38c], ebp
mov edx, dword [esp + 0x34]
mov byte [edx], bl
mov dword [esp + 0x38c], 2
push ebx
pop ebx
mov dword [esp + 0x10], ebx
mov ah, ah
mov dword [esp + 0x14], ebx
mov dl, dl
mov al, 0x64
mov byte [esp + 0x160], al
mov byte [esp + 0x165], al
mov al, 0x6c
mov byte [esp + 0x161], 0x78
mov byte [esp + 0x162], 0x67
mov byte [esp + 0x163], 0x69
mov byte [esp + 0x164], 0x2e
mov byte [esp + 0x166], al
mov byte [esp + 0x167], al
mov byte [esp + 0x168], bl
mov edx, edx
lea eax, [esp + 0x160]
push eax
call dword [sym.imp.KERNEL32.DLL_LoadLibraryA]
mov edi, eax
mov ebx, ebx
cmp edi, ebx
jne 0x1002d631
lea ecx, [esp + 0x24]
push ecx
mov ecx, esi
call fcn.10009270
mov dword [esp + 0x1c], ebp
jmp 0x1002d890
mov dl, 0x65
mov cl, 0x61
mov al, 0x74
mov byte [esp + 0x16c], 0x43
mov byte [esp + 0x16d], 0x72
mov byte [esp + 0x16e], dl
mov byte [esp + 0x16f], cl
mov byte [esp + 0x170], al
mov byte [esp + 0x171], dl
mov byte [esp + 0x172], 0x44
mov byte [esp + 0x173], 0x58
mov byte [esp + 0x174], 0x47
mov byte [esp + 0x175], 0x49
mov byte [esp + 0x176], 0x46
mov byte [esp + 0x177], cl
mov byte [esp + 0x178], 0x63
mov byte [esp + 0x179], al
mov byte [esp + 0x17a], 0x6f
mov byte [esp + 0x17b], 0x72
mov byte [esp + 0x17c], 0x79
mov byte [esp + 0x17d], bl
mov al, al
lea edx, [esp + 0x16c]
push edx
push edi
call dword [sym.imp.KERNEL32.DLL_GetProcAddress]
mov cl, cl
cmp eax, ebx
jne 0x1002d6ec
lea eax, [esp + 0x24]
push eax
mov ecx, esi
call fcn.10009270
mov dword [esp + 0x1c], ebp
jmp 0x1002d890
xor ebp, ebp
mov cl, cl
lea ecx, [esp + 0x10]
push ecx
push 0x10165780
call eax
mov ebp, ebp
cmp eax, ebx
jge 0x1002d715
push edi
call dword [sym.imp.KERNEL32.DLL_FreeLibrary]
push edx
pop edx
lea edx, [esp + 0x24]
push edx
jmp 0x1002d881
mov eax, dword [esp + 0x10]
mov ecx, dword [eax]
lea edx, [esp + 0x14]
push edx
push ebx
push eax
mov eax, dword [ecx + 0x1c]
call eax
test eax, eax
jne 0x1002d865
nop
mov eax, eax
mov eax, dword [esp + 0x14]
mov ecx, dword [eax]
lea edx, [esp + 0x3c]
push edx
push eax
mov eax, dword [ecx + 0x20]
call eax
push ecx
pop ecx
push 0x1ff
lea ecx, [esp + 0x185]
push ebx
push ecx
mov byte [esp + 0x18c], bl
call fcn.100fbc20
add esp, 0xc
mov edx, edx
push ebx
push ebx
push 0x200
lea edx, [esp + 0x18c]
push edx
push 0xffffffffffffffff
lea eax, [esp + 0x50]
push eax
push ebx
push ebx
call dword [sym.imp.KERNEL32.DLL_WideCharToMultiByte]
mov eax, eax
cmp dword [esp + 0x14c], ebx
je 0x1002d838
cmp dword [esp + 0x394], ebx
jne 0x1002d7cc
lea eax, [esp + 0x180]
lea edx, [eax + 1]
mov cl, byte [eax]
add eax, 1
cmp cl, bl
jne 0x1002d7a4
sub eax, edx
lea ecx, [esp + eax + 0x180]
push ecx
lea edx, [esp + 0x184]
push edx
lea ecx, [esp + 0x2c]
call fcn.100092e0
mov ecx, ecx
jmp 0x1002d838
mov eax, dword [esp + 0x34]
sub eax, dword [esp + 0x38]
je 0x1002d808
mov byte [esp + 0x18], 0x7c
mov byte [esp + 0x19], bl
mov ch, ch
lea eax, [esp + 0x18]
lea edx, [eax + 1]
mov cl, byte [eax]
add eax, 1
cmp cl, bl
jne 0x1002d7e8
sub eax, edx
lea ecx, [esp + eax + 0x18]
push ecx
lea edx, [esp + 0x1c]
push edx
lea ecx, [esp + 0x2c]
call fcn.100092e0
mov al, al
lea eax, [esp + 0x180]
lea edx, [eax + 1]
mov cl, byte [eax]
add eax, 1
cmp cl, bl
jne 0x1002d812
sub eax, edx
lea eax, [esp + eax + 0x180]
push eax
lea ecx, [esp + 0x184]
push ecx
lea ecx, [esp + 0x2c]
call fcn.100092e0
mov ecx, ecx
mov eax, dword [esp + 0x14]
mov edx, dword [eax]
push eax
mov eax, dword [edx + 8]
call eax
push edx
pop edx
add ebp, 1
push ecx
pop ecx
mov eax, dword [esp + 0x10]
mov ecx, dword [eax]
lea edx, [esp + 0x14]
push edx
push ebp
push eax
mov eax, dword [ecx + 0x1c]
call eax
test eax, eax
je 0x1002d730
mov eax, dword [esp + 0x10]
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
push ebx
pop ebx
push edi
call dword [sym.imp.KERNEL32.DLL_FreeLibrary]
mov eax, eax
lea eax, [esp + 0x24]
push eax
mov ecx, esi
call fcn.10009270
mov dword [esp + 0x1c], 1
mov byte [esp + 0x38c], bl
lea ecx, [esp + 0x24]
call fcn.100068e0
mov eax, esi
mov ecx, dword [esp + 0x384]
mov dword fs:[0], ecx
pop ecx
pop edi
pop ebp
pop ebx
mov ecx, dword [esp + 0x370]
xor ecx, esp
call fcn.100fb12a
add esp, 0x380
ret