Function at 0x403080
Capabilities:
Contain obfuscated stackstrings
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff0
sub esp, 0x1f4
push ebx
push esi
push edi
mov ebx, ecx
call fcn.00405620
test al, al
je 0x40357b
call fcn.00405c70
mov ecx, ebx
call fcn.00405490
call fcn.00405970
mov eax, dword fs:[0x18]
mov edx, 0x4f
mov dword [esp + 0x20], 0
push 0xc4ee
push 0xf4d5743
mov eax, dword [eax + 0x30]
lea ecx, [edx - 0x48]
mov eax, dword [eax + 0x10]
mov esi, dword [eax + 0x44]
call fcn.00402800
add esp, 8
lea ecx, [esp + 0x20]
push ecx
push esi
call eax
mov ecx, dword [esp + 0x20]
mov esi, eax
mov dword [esp + 0x38], esi
mov dword [esp + 0x24], 0x7f
cmp ecx, 3
jl 0x4031ff
xor edi, edi
test ecx, ecx
jle 0x4031ff
nop dword [eax]
mov byte [esp + 0x13], 0x2a
mov byte [esp + 0x14], 0x47
mov byte [esp + 0x15], 0x30
mov byte [esp + 0x16], 0x47
mov byte [esp + 0x17], 0x30
mov byte [esp + 0x18], 0x47
mov byte [esp + 0x19], 0x1a
mov byte [esp + 0x1a], 0x47
mov byte [esp + 0x1b], 0x6c
mov byte [esp + 0x1c], 0x47
mov byte [esp + 0x1d], 0x47
mov byte [esp + 0x1e], 0x47
mov al, byte [esp + 0x13]
mov byte [esp + 0x1f], 0
cmp byte [esp + 0x1f], 0
jne 0x403184
xor ecx, ecx
nop
mov al, byte [esp + ecx + 0x13]
movzx eax, al
sub eax, 0x47
imul eax, eax, 0x33
cdq
idiv dword [esp + 0x24]
lea eax, [edx + 0x7f]
cdq
idiv dword [esp + 0x24]
mov byte [esp + ecx + 0x13], dl
inc ecx
cmp ecx, 0xc
jb 0x403160
mov esi, dword [esi + edi*4]
mov edx, 0x2f
push 0x46a4
push 0x388b576c
lea ecx, [edx - 0x2e]
call fcn.00402800
add esp, 8
lea ecx, [esp + 0x13]
push ecx
push esi
call eax
test eax, eax
je 0x4031be
mov esi, dword [esp + 0x38]
inc edi
cmp edi, dword [esp + 0x20]
jl 0x403110
jmp 0x4031ff
mov eax, dword [0x455ee4]
test eax, eax
jne 0x4031fb
push 0xc8
call fcn.0040b1b0
add esp, 4
test eax, eax
je 0x4031f4
mov word [eax], 0x101
mov dword [eax + 4], 0x1e
mov dword [eax + 8], 5
mov dword [eax + 0x10], 3
jmp 0x4031f6
xor eax, eax
mov dword [0x455ee4], eax
mov byte [eax + 0x78], 1
mov edi, dword [sym.imp.KERNEL32.dll_InitializeCriticalSection]
mov esi, 0x412038
nop word [eax + eax]
lea eax, [esi - 0x18]
push eax
call edi
mov dword [esi], 0
add esi, 0x1c
cmp esi, 0x413618
jl 0x403210
call fcn.00401250
push section..data
call edi
mov edx, 1
push 0xb8c2
push 0xa3c47443
mov ecx, edx
call fcn.00402800
add esp, 8
push 0
push 0
push 0
push 0xffffffffffffffff
call eax
mov dword [ebx + 0x1c], eax
test eax, eax
je 0x40357b
mov eax, dword [0x455ee8]
test eax, eax
jne 0x403279
push 4
call fcn.0040b1b0
add esp, 4
mov dword [0x455ee8], eax
mov ecx, dword [ebx + 0x1c]
mov edx, 0x35
mov dword [eax], ecx
xorps xmm0, xmm0
push 0x87cf
push 0x20946f47
lea ecx, [edx - 0x34]
movaps xmmword [esp + 0x48], xmm0
movaps xmmword [esp + 0x58], xmm0
mov dword [esp + 0x68], 0
call fcn.00402800
add esp, 8
lea ecx, [esp + 0x40]
push ecx
call eax
mov eax, dword [esp + 0x54]
xor esi, esi
mov dword [ebx + 0x18], eax
test eax, eax
je 0x40332c
mov edx, 0x49
push 0x96fe
push 0x450b6443
lea ecx, [edx - 0x48]
call fcn.00402800
add esp, 8
push 0
push 0
push ebx
push 0x403060
push 0
push 0
call eax
mov ecx, dword [0x455c84]
mov edi, eax
mov edx, dword [0x455c88]
cmp ecx, edx
jne 0x403311
lea ecx, [edx + 4]
push ecx
mov ecx, 0x455c80
call fcn.00406190
mov ecx, dword [0x455c84]
mov eax, dword [0x455c80]
inc esi
mov dword [eax + ecx*4], edi
mov eax, dword [0x455c84]
inc eax
mov dword [0x455c84], eax
cmp esi, dword [ebx + 0x18]
jb 0x4032c1
jmp 0x403331
mov eax, dword [0x455c84]
test eax, eax
je 0x40357b
mov eax, dword [0x455ee4]
test eax, eax
jne 0x403376
push 0xc8
call fcn.0040b1b0
add esp, 4
test eax, eax
je 0x40336f
mov word [eax], 0x101
mov dword [eax + 4], 0x1e
mov dword [eax + 8], 5
mov dword [eax + 0x10], 3
jmp 0x403371
xor eax, eax
mov dword [0x455ee4], eax
test byte [eax + 0x10], 1
je 0x4033ae
mov edx, 0x49
push 0x96fe
push 0x450b6443
lea ecx, [edx - 0x48]
call fcn.00402800
add esp, 8
push 0
push 0
push ebx
push 0x403040
push 0
push 0
call eax
mov dword [ebx + 0x20], eax
mov eax, dword [0x455ee4]
test eax, eax
jne 0x4033e6
push 0xc8
call fcn.0040b1b0
add esp, 4
test eax, eax
je 0x4033df
mov word [eax], 0x101
mov dword [eax + 4], 0x1e
mov dword [eax + 8], 5
mov dword [eax + 0x10], 3
jmp 0x4033e1
xor eax, eax
mov dword [0x455ee4], eax
mov eax, dword [eax + 0x10]
shr eax, 1
test al, 1
je 0x403558
push 0x190
lea eax, [esp + 0x74]
push 0
push eax
call fcn.0040d3a0
add esp, 0xc
mov edx, 0x88
mov ecx, 4
push 0xb231
push 0x906e7057
call fcn.00402800
add esp, 8
lea ecx, [esp + 0x70]
push ecx
push 0x202
call eax
cmp dword [0x412018], 0
jne 0x4034eb
mov edx, 0x54
mov dword [esp + 0x28], 0x25a207b9
push 0x9115
push 0xd0115757
mov dword [esp + 0x34], 0x4660ddf3
lea ecx, [edx - 0x50]
mov dword [esp + 0x38], 0xe576e98e
mov dword [esp + 0x3c], 0x3e06748c
call fcn.00402800
add esp, 8
push 0
push 0
push 0
push 6
push 1
push 2
call eax
mov esi, eax
cmp esi, 0xffffffff
je 0x4034eb
mov edx, 0x7f
mov dword [esp + 0x3c], 0
push 0x91a
push 0x4bdf6c57
lea ecx, [edx - 0x7b]
call fcn.00402800
add esp, 8
lea ecx, [esp + 0x3c]
push 0
push 0
push ecx
push 4
push 0x412018
push 0x10
lea ecx, [esp + 0x40]
push ecx
push 0xc8000006
push esi
call eax
test eax, eax
jne 0x4034eb
push 0x646f
push 0xf8237463
lea edx, [eax + 0x5f]
lea ecx, [eax + 4]
call fcn.00402800
add esp, 8
push esi
call eax
call fcn.00406700
test al, al
je 0x403558
call fcn.004069b0
call fcn.00406b20
mov edx, 0x49
push 0x96fe
push 0x450b6443
lea ecx, [edx - 0x48]
call fcn.00402800
add esp, 8
push 0
push 0
push ebx
push 0x403050
push 0
push 0
call eax
mov edx, 0x49
mov dword [ebx + 0x24], eax
push 0x96fe
push 0x450b6443
lea ecx, [edx - 0x48]
call fcn.00402800
add esp, 8
push 0
push 0
push ebx
push 0x403070
push 0
push 0
call eax
mov dword [ebx + 0x28], eax
cmp dword [ebx + 0x20], 0
jne 0x403572
cmp dword [ebx + 0x24], 0
jne 0x403572
cmp dword [ebx + 0x28], 0
setne al
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov al, 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
xor al, al
pop ebx
mov esp, ebp
pop ebp
ret