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

Disassembly:
sub esp, 0x2fc
push ebx
push ebp
push esi
push edi
push 0x42
lea eax, [esp + 0x98]
mov dword [esp + 0x88], ecx
push 0
push eax
mov dword [esp + 0x1c], 0
call fcn.0040d390
add esp, 0xc
mov edx, 0x1f
push 0x3486
push 0xf02e6e52
lea ecx, [edx - 0x13]
call fcn.004027f0
add esp, 8
lea ecx, [esp + 0x94]
push ecx
push 0
lea ecx, [esp + 0x18]
push ecx
call eax
test eax, eax
jne 0x40c276
mov esi, dword [esp + 0x10]
lea edx, [eax + 0x5f]
push 0x8302
push 0xc1957352
lea ecx, [eax + 0xc]
call fcn.004027f0
add esp, 8
lea ecx, [esp + 0x84]
push 0
push 0
push 0
push 0
push ecx
push 1
push esi
call eax
test eax, eax
jne 0x40c276
mov esi, dword [esp + 0x10]
lea edx, [eax + 0x6e]
push 0xb698
push 0x90607452
lea ecx, [eax + 0xc]
mov dword [esp + 0x84], eax
mov dword [esp + 0x20], eax
mov dword [esp + 0x28], eax
call fcn.004027f0
add esp, 8
lea ecx, [esp + 0x7c]
push ecx
push 0
lea ecx, [esp + 0x28]
push ecx
lea ecx, [esp + 0x24]
push ecx
push esi
call eax
cmp eax, 0xea
jne 0x40c253
mov eax, dword [esp + 0x18]
test eax, eax
je 0x40c253
xor ecx, ecx
mov edx, 0x29c
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.0040b1b0
mov esi, dword [esp + 0x14]
mov edi, eax
add esp, 4
mov dword [esp + 0x78], edi
mov ecx, 0xc
test edi, edi
je 0x40c25c
mov eax, dword [esp + 0x18]
lea edx, [ecx + 0x62]
push 0xb698
push 0x90607452
mov dword [esp + 0x28], eax
call fcn.004027f0
add esp, 8
lea ecx, [esp + 0x7c]
push ecx
push edi
lea ecx, [esp + 0x28]
push ecx
lea ecx, [esp + 0x24]
push ecx
push esi
call eax
test eax, eax
jne 0x40c283
cmp dword [esp + 0x18], eax
je 0x40c283
mov eax, dword fs:[0x18]
mov ebx, 0x7f
mov eax, dword [eax + 0x20]
mov byte [esp + 0x59], 0x79
mov byte [esp + 0x5a], 0x37
mov byte [esp + 0x5b], 0x3f
mov byte [esp + 0x5c], 0x37
mov byte [esp + 0x5d], 0x36
mov byte [esp + 0x5e], 0x37
mov byte [esp + 0x5f], 0x71
mov byte [esp + 0x60], 0x37
mov byte [esp + 0x61], 0x25
mov byte [esp + 0x62], 0x37
mov byte [esp + 0x63], 0x58
mov byte [esp + 0x64], 0x37
mov byte [esp + 0x65], 0x79
mov byte [esp + 0x66], 0x37
mov byte [esp + 0x67], 0x58
mov byte [esp + 0x68], 0x37
mov byte [esp + 0x69], 0x4b
mov byte [esp + 0x6a], 0x37
mov byte [esp + 0x6b], 0x79
mov byte [esp + 0x6c], 0x37
mov byte [esp + 0x6d], 0x3f
mov byte [esp + 0x6e], 0x37
mov byte [esp + 0x6f], 0x79
mov byte [esp + 0x70], 0x37
mov byte [esp + 0x71], 0x37
mov byte [esp + 0x72], 0x37
mov dword [esp + 0x1c], eax
mov al, byte [esp + 0x59]
mov byte [esp + 0x73], 0
cmp byte [esp + 0x73], 0
jne 0x40bdf4
xor esi, esi
nop word [eax + eax]
mov al, byte [esp + esi + 0x59]
movzx ecx, al
sub ecx, 0x37
mov eax, ecx
shl eax, 4
sub eax, ecx
cdq
idiv ebx
lea eax, [edx + 0x7f]
cdq
idiv ebx
mov byte [esp + esi + 0x59], dl
inc esi
cmp esi, 0x1a
jb 0x40bdd0
push 0x22c
lea eax, [esp + 0xe0]
push 0
push eax
call fcn.0040d390
add esp, 0xc
mov edx, 0x73
push 0xe82c
push 0xa6367443
lea ecx, [edx - 0x72]
call fcn.004027f0
add esp, 8
push 0
push 2
call eax
mov esi, eax
cmp esi, 0xffffffff
jne 0x40be39
xor ecx, ecx
jmp 0x40beff
mov edx, 0x4d
mov dword [esp + 0xdc], 0x22c
push 0x9c1c
push 0xa6e45750
lea ecx, [edx - 0x4c]
call fcn.004027f0
add esp, 8
lea edx, [esp + 0xdc]
push edx
push esi
call eax
mov ecx, 1
test eax, eax
jne 0x40be90
push 0xf90
push 0x5fe36543
lea edx, [ecx + 0x38]
call fcn.004027f0
add esp, 8
push esi
call eax
xor ecx, ecx
jmp 0x40beff
push 0xc682
push 0x11fa576c
mov edx, 0x35
call fcn.004027f0
add esp, 8
lea ecx, [esp + 0x100]
push ecx
lea ecx, [esp + 0x5d]
push ecx
call eax
mov ecx, 1
test eax, eax
je 0x40bede
push 0xe6ba
push 0xbaee5750
lea edx, [ecx + 0x16]
call fcn.004027f0
add esp, 8
lea ecx, [esp + 0xdc]
push ecx
jmp 0x40be66
push 0xf90
push 0x5fe36543
mov edx, 0x39
call fcn.004027f0
add esp, 8
push esi
call eax
mov ecx, dword [esp + 0xe4]
xor eax, eax
mov dword [esp + 0x14], ecx
xor ebp, ebp
mov dword [esp + 0x74], ebp
cmp dword [esp + 0x20], eax
jbe 0x40c1e3
mov edx, dword [esp + 0x1c]
mov ebx, edi
mov dword [esp + 0x80], ebx
mov ebx, dword [ebx]
cmp ebx, edx
je 0x40c247
cmp ebx, ecx
je 0x40c247
cmp eax, ebx
je 0x40c1c0
mov dword [esp + 0x24], ebx
mov edi, 0x1e
xor esi, esi
test esi, esi
je 0x40bf54
push esi
call fcn.0040b1d0
add esp, 4
xor ecx, ecx
mov eax, edi
mov edx, 2
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.0040b1b0
mov esi, eax
add esp, 4
test esi, esi
je 0x40c1b4
xor eax, eax
mov dword [esp + 0x88], ebx
push 0xfa9
push 0xd67a6e5a
mov edx, 0x81
mov word [esp + 0x94], ax
lea ecx, [eax + 5]
mov word [esp + 0x96], di
mov dword [esp + 0x98], esi
call fcn.004027f0
add esp, 8
lea ecx, [esp + 0x88]
push 0
push 0xc
push ecx
push 0x58
call eax
test eax, eax
je 0x40bfef
cmp eax, 0xc0000004
jne 0x40bfe1
cmp edi, 0x104
jae 0x40c1b4
add edi, edi
jmp 0x40bf47
push esi
call fcn.0040b1d0
add esp, 4
jmp 0x40c1b4
mov byte [esp + 0x2b], 0x21
mov byte [esp + 0x2c], 0x47
mov byte [esp + 0x2d], 0x7c
mov byte [esp + 0x2e], 0x47
mov byte [esp + 0x2f], 0x3a
mov byte [esp + 0x30], 0x47
mov byte [esp + 0x31], 9
mov byte [esp + 0x32], 0x47
mov byte [esp + 0x33], 0x6b
mov byte [esp + 0x34], 0x47
mov byte [esp + 0x35], 0x32
mov byte [esp + 0x36], 0x47
mov byte [esp + 0x37], 0x7c
mov byte [esp + 0x38], 0x47
mov byte [esp + 0x39], 0x57
mov byte [esp + 0x3a], 0x47
mov byte [esp + 0x3b], 0x21
mov byte [esp + 0x3c], 0x47
mov byte [esp + 0x3d], 0x47
mov byte [esp + 0x3e], 0x47
mov al, byte [esp + 0x2b]
mov byte [esp + 0x3f], 0
cmp byte [esp + 0x3f], 0
jne 0x40c098
xor edi, edi
lea ebp, [edi + 0x7f]
nop dword [eax + eax]
mov al, byte [esp + edi + 0x2b]
movzx ecx, al
sub ecx, 0x47
mov eax, ecx
shl eax, 5
sub eax, ecx
cdq
idiv ebp
lea eax, [edx + 0x7f]
cdq
idiv ebp
mov byte [esp + edi + 0x2b], dl
inc edi
cmp edi, 0x14
jb 0x40c070
mov ebp, dword [esp + 0x74]
mov edx, 0x1a
push 0x4962
push 0xc4af5753
lea ecx, [edx - 0x10]
call fcn.004027f0
add esp, 8
lea ecx, [esp + 0x2b]
push ecx
push esi
call eax
mov byte [esp + 0x40], 0x3e
test eax, eax
mov byte [esp + 0x41], 0x68
mov byte [esp + 0x42], 9
setne bl
mov byte [esp + 0x43], 0x68
mov byte [esp + 0x44], 6
mov byte [esp + 0x45], 0x68
mov byte [esp + 0x46], 0x57
mov byte [esp + 0x47], 0x68
mov byte [esp + 0x48], 0x30
mov byte [esp + 0x49], 0x68
mov byte [esp + 0x4a], 0x3e
mov byte [esp + 0x4b], 0x68
mov byte [esp + 0x4c], 2
mov byte [esp + 0x4d], 0x68
mov byte [esp + 0x4e], 0xb
mov byte [esp + 0x4f], 0x68
mov byte [esp + 0x50], 0xd
mov byte [esp + 0x51], 0x68
mov byte [esp + 0x52], 0x10
mov byte [esp + 0x53], 0x68
mov byte [esp + 0x54], 0xd
mov byte [esp + 0x55], 0x68
mov byte [esp + 0x56], 0x68
mov byte [esp + 0x57], 0x68
mov al, byte [esp + 0x40]
mov byte [esp + 0x58], 0
cmp byte [esp + 0x58], 0
jne 0x40c17b
xor edi, edi
lea ebp, [edi + 0x7f]
nop dword [eax]
mov al, byte [esp + edi + 0x40]
mov ecx, 0x68
movzx eax, al
sub ecx, eax
lea eax, [ecx + ecx*8]
shl eax, 2
cdq
idiv ebp
lea eax, [edx + 0x7f]
cdq
idiv ebp
mov byte [esp + edi + 0x40], dl
inc edi
cmp edi, 0x18
jb 0x40c150
mov ebp, dword [esp + 0x74]
mov edx, 0x1a
push 0x4962
push 0xc4af5753
lea ecx, [edx - 0x10]
call fcn.004027f0
add esp, 8
lea ecx, [esp + 0x40]
push ecx
push esi
call eax
push esi
mov edi, eax
call fcn.0040b1d0
add esp, 4
test edi, edi
jne 0x40c1e3
test bl, bl
jne 0x40c247
mov edx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x24]
mov ebx, dword [esp + 0x80]
inc ebp
add ebx, 0x29c
mov dword [esp + 0x74], ebp
mov dword [esp + 0x80], ebx
cmp ebp, dword [esp + 0x20]
jb 0x40bf22
mov esi, dword [esp + 0x10]
mov edx, 0x6d
push 0xcdc7
push 0x5be6e52
lea ecx, [edx - 0x61]
call fcn.004027f0
add esp, 8
push 0
push 1
push esi
call eax
push dword [esp + 0x78]
mov edi, eax
call fcn.0040b1d0
mov esi, dword [esp + 0x14]
add esp, 4
mov edx, 0x55
push 0x7cc
push 0xd89d6e52
lea ecx, [edx - 0x49]
call fcn.004027f0
add esp, 8
push esi
call eax
test edi, edi
sete al
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x2fc
ret
push dword [esp + 0x78]
call fcn.0040b1d0
add esp, 4
mov esi, dword [esp + 0x10]
mov ecx, 0xc
push 0x7cc
push 0xd89d6e52
mov edx, 0x55
call fcn.004027f0
add esp, 8
push esi
call eax
pop edi
pop esi
pop ebp
xor al, al
pop ebx
add esp, 0x2fc
ret
push edi
jmp 0x40c24b