Function at 0x10037db0
Capabilities:
Contain obfuscated stackstrings

Disassembly:
sub esp, 0x2c
mov al, 0x71
push ebx
mov byte [esp + 0x20], al
mov byte [esp + 0x25], al
mov al, byte [0x101980c4]
push ebp
push esi
push edi
test al, 1
mov byte [esp + 0x14], 0x28
mov byte [esp + 0x15], 0x9e
mov byte [esp + 0x16], 0xd1
mov byte [esp + 0x17], 3
mov byte [esp + 0x18], 0x14
mov byte [esp + 0x19], 0x90
mov byte [esp + 0x1a], 0x3a
mov byte [esp + 0x1b], 0xc0
mov byte [esp + 0x1c], 0x6c
mov byte [esp + 0x1d], 0x15
mov byte [esp + 0x1e], 0x17
mov byte [esp + 0x1f], 0x1f
mov byte [esp + 0x28], 0x43
mov byte [esp + 0x29], 0xfb
mov byte [esp + 0x2a], 0xa3
mov byte [esp + 0x2b], 0x6d
mov byte [esp + 0x2d], 0xfc
mov byte [esp + 0x2e], 9
mov byte [esp + 0x2f], 0xf2
mov byte [esp + 0x30], 0x42
mov byte [esp + 0x32], 0x7b
mov byte [esp + 0x33], 0x73
jne 0x10037ec5
mov bl, al
push 0xd
or bl, 1
mov byte [0x101980c4], bl
call fcn.1013c2df
add esp, 4
mov dword [0x101980c8], eax
xor edi, edi
mov bl, byte [esp + edi + 0x28]
movsx eax, byte [esp + edi + 0x14]
movsx esi, bl
test esi, esi
jne 0x10037e6d
mov esi, 8
cdq
idiv esi
mov ecx, edx
test ecx, ecx
je 0x10037e98
mov eax, ecx
cdq
mov ebp, eax
mov eax, esi
xor ebp, edx
sub ebp, edx
cdq
xor eax, edx
sub eax, edx
cmp eax, ebp
jge 0x10037e8d
lea esi, [ebp + 0xc]
mov eax, ecx
cdq
idiv esi
mov ecx, eax
test ecx, ecx
jne 0x10037e8d
mov al, byte [esp + edi + 0x14]
xor bl, al
mov eax, dword [0x101980c8]
or bl, cl
mov byte [edi + eax], bl
inc edi
cmp edi, 0xc
jb 0x10037e58
mov ecx, dword [0x101980c8]
push 0x10038050
mov byte [ecx + 0xc], 0
call fcn.1013c36b
add esp, 4
mov edx, dword [0x101980c8]
mov al, 0xac
mov byte [esp + 0x2a], al
mov byte [esp + 0x2c], al
mov al, 0x2a
mov dword [esp + 0x10], edx
mov byte [esp + 0x3a], al
mov byte [esp + 0x1e], al
mov al, byte [0x101980cc]
mov byte [esp + 0x28], 0xf1
test al, 1
mov byte [esp + 0x29], 0x23
mov byte [esp + 0x2b], 0x61
mov byte [esp + 0x2d], 0x96
mov byte [esp + 0x2e], 0x48
mov byte [esp + 0x2f], 0x6d
mov byte [esp + 0x30], 0x33
mov byte [esp + 0x31], 0x75
mov byte [esp + 0x32], 0x4d
mov byte [esp + 0x33], 0x2b
mov byte [esp + 0x34], 0xae
mov byte [esp + 0x35], 0x73
mov byte [esp + 0x36], 0xec
mov byte [esp + 0x37], 0xce
mov byte [esp + 0x38], 0xd8
mov byte [esp + 0x39], 0xbf
mov byte [esp + 0x14], 0xa6
mov byte [esp + 0x15], 0x42
mov byte [esp + 0x16], 0xc5
mov byte [esp + 0x17], 0x15
mov byte [esp + 0x18], 0xea
mov byte [esp + 0x19], 0xf9
mov byte [esp + 0x1a], 0x3a
mov byte [esp + 0x1b], 0x3e
mov byte [esp + 0x1c], 0x5a
mov byte [esp + 0x1d], 0x1b
mov byte [esp + 0x1f], 0x47
mov byte [esp + 0x20], 0xcb
mov byte [esp + 0x21], 0x3c
mov byte [esp + 0x22], 0x8e
mov byte [esp + 0x23], 0xa4
mov byte [esp + 0x24], 0xbd
mov byte [esp + 0x25], 0xdc
mov byte [esp + 0x26], 0x5e
jne 0x10038023
mov bl, al
push 0x14
or bl, 1
mov byte [0x101980cc], bl
call fcn.1013c2df
add esp, 4
mov dword [0x101980d0], eax
xor edi, edi
mov bl, byte [esp + edi + 0x14]
movsx eax, byte [esp + edi + 0x28]
movsx esi, bl
test esi, esi
jne 0x10037fcb
mov esi, 8
cdq
idiv esi
mov ecx, edx
test ecx, ecx
je 0x10037ff6
mov eax, ecx
cdq
mov ebp, eax
mov eax, esi
xor ebp, edx
sub ebp, edx
cdq
xor eax, edx
sub eax, edx
cmp eax, ebp
jge 0x10037feb
lea esi, [ebp + 0xc]
mov eax, ecx
cdq
idiv esi
mov ecx, eax
test ecx, ecx
jne 0x10037feb
mov al, byte [esp + edi + 0x28]
xor bl, al
mov eax, dword [0x101980d0]
or bl, cl
mov byte [edi + eax], bl
inc edi
cmp edi, 0x13
jb 0x10037fb6
mov ecx, dword [0x101980d0]
push 0x10038060
mov byte [ecx + 0x13], 0
call fcn.1013c36b
add esp, 4
mov edx, dword [esp + 0x10]
mov esi, dword [0x101980d0]
push edx
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov ecx, dword [esp + 0x44]
mov edx, dword [esp + 0x40]
push ecx
push edx
push esi
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
call eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x2c
ret