Function at 0x40dfd9
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x13cc
call fcn.004357e0
push ebx
push esi
push edi
push 5
pop edx
xor ebx, ebx
mov esi, ecx
push 0x56
mov dword [ebp - 4], ebx
mov byte [ebp - 0x28], 0x50
mov byte [ebp - 0x27], 0x4d
mov byte [ebp - 0x26], 0x4f
mov byte [ebp - 0x25], 0x20
mov byte [ebp - 0x24], 0x20
mov byte [ebp - 0x23], 0x20
mov byte [ebp - 0x22], 0x20
mov byte [ebp - 0x21], bl
mov byte [ebp - 0x20], 0x31
mov byte [ebp - 0x1f], 0x2e
mov byte [ebp - 0x1e], 0x30
mov byte [ebp - 0x1d], 0x2e
mov byte [ebp - 0x1c], 0x30
mov byte [ebp - 0x1b], 0x2e
mov byte [ebp - 0x1a], 0x30
mov byte [ebp - 0x19], bl
mov dword [ebp - 0x18], ebx
mov dword [ebp - 0x14], ebx
mov dword [ebp - 0x10], ebx
mov byte [ebp - 0x1d4], 0x4b
mov byte [ebp - 0x1d3], 0x43
mov byte [ebp - 0x1d2], 0x58
mov byte [ebp - 0x1d1], 0x50
mov byte [ebp - 0x1d0], 0x20
mov byte [ebp - 0x1cf], 0x20
mov byte [ebp - 0x1ce], 0x20
mov byte [ebp - 0x1cd], bl
mov byte [ebp - 0x1cc], 0x31
mov byte [ebp - 0x1cb], 0x2e
mov byte [ebp - 0x1ca], 0x30
mov byte [ebp - 0x1c9], 0x2e
mov byte [ebp - 0x1c8], 0x30
mov byte [ebp - 0x1c7], 0x2e
mov byte [ebp - 0x1c6], 0x30
mov byte [ebp - 0x1c5], bl
mov byte [ebp - 0x1c4], bl
mov byte [ebp - 0x1c3], 2
mov dword [ebp - 0x1c2], 0x4e20
mov dword [ebp - 0x1be], ebx
mov dword [ebp - 0x1ba], ebx
mov dword [ebp - 0x1b6], ebx
mov dword [ebp - 0x1b2], ebx
mov dword [ebp - 0x1ae], edx
mov byte [ebp - 0x1aa], bl
mov byte [ebp - 0x1a9], bl
mov byte [ebp - 0x1a8], bl
mov byte [ebp - 0x1a7], bl
mov byte [ebp - 0x1a6], bl
mov byte [ebp - 0x1a5], bl
mov byte [ebp - 0x1a4], bl
mov byte [ebp - 0x1a3], bl
mov byte [ebp - 0x1a2], bl
mov byte [ebp - 0x1a1], bl
mov byte [ebp - 0x1a0], bl
mov byte [ebp - 0x19f], bl
mov byte [ebp - 0x19e], bl
mov byte [ebp - 0x19d], bl
mov byte [ebp - 0x19c], bl
mov byte [ebp - 0x19b], bl
mov byte [ebp - 0x19a], bl
mov byte [ebp - 0x199], bl
mov byte [ebp - 0x198], bl
mov byte [ebp - 0x197], bl
mov byte [ebp - 0x196], bl
mov byte [ebp - 0x195], bl
mov byte [ebp - 0x194], bl
mov byte [ebp - 0x193], bl
mov byte [ebp - 0x192], bl
pop ecx
xor eax, eax
lea edi, [ebp - 0x191]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
mov eax, dword [esi + 0x33c]
add eax, 0x10
push eax
push str._s_answer_start
push edx
push ebx
call fcn.00426a9a
add esp, 0x10
cmp dword [ebp + 0xc], ebx
jne 0x40e1ad
push dword [ebp + 8]
call sub.MSVCRT.dll_strlen
pop ecx
mov dword [ebp + 0xc], eax
mov eax, dword [esi + 0x85bc]
mov ecx, dword [esi + 0x85f0]
mov eax, dword [ecx + eax*4]
mov ecx, dword [eax + 0x64]
mov eax, dword [eax + 0x68]
cmp eax, ebx
mov dword [ebp - 0x34], ecx
mov dword [ebp - 0x30], eax
jle 0x40e1d5
imul eax, eax, 0x3e8
mov dword [ebp - 0x30], eax
push 0x18
lea eax, [ebp - 0x190]
push ebx
push eax
call sub.MSVCRT.dll_memset
add esp, 0xc
mov eax, dword [ebp - 0x34]
push 0x18
mov dword [ebp - 0x14], eax
mov eax, dword [esi + 0x33c]
add eax, 0x10
mov dword [ebp - 0x18], ebx
push eax
lea eax, [ebp - 0x1a8]
push eax
call sub.MSVCRT.dll_memcpy
mov eax, dword [esi + 0x33c]
push 0x18
add eax, 0x29
push eax
lea eax, [ebp - 0x7f]
push eax
call sub.MSVCRT.dll_memcpy
add esp, 0x18
lea eax, [ebp - 0x190]
push dword [esi + 0x8524]
push 0x44249c
push eax
call dword [sym.imp.MSVCRT.dll_sprintf]
mov eax, dword [esi + 0x33c]
push 9
add eax, 0x42
mov byte [ebp - 0xc6], 4
push eax
lea eax, [ebp - 0x10f]
push eax
call sub.MSVCRT.dll_memcpy
mov eax, dword [esi + 0x33c]
push 0x20
add eax, 0x4c
push eax
lea eax, [ebp - 0xe6]
push eax
call sub.MSVCRT.dll_memcpy
mov eax, dword [ebp - 0x30]
mov byte [ebp - 0x1c3], 1
mov dword [ebp - 0x1c2], eax
mov eax, dword [0x454704]
mov dword [ebp - 0x1ae], 5
mov byte [ebp - 0x1aa], bl
mov ecx, dword [eax + 0x20]
mov edi, dword [ebp + 0xc]
add esp, 0x24
mov cl, byte [ecx + 0x30]
mov byte [ebp - 0xc4], cl
mov eax, dword [eax + 0x20]
mov ecx, dword [ebp - 4]
mov al, byte [eax + 0x34]
sub edi, ecx
mov byte [ebp - 0xc5], al
mov eax, 0xff4
cmp edi, eax
jl 0x40e2c2
mov edi, eax
mov eax, dword [ebp + 8]
push edi
add ecx, eax
lea eax, [ebp - 0x13cc]
push ecx
push eax
call sub.MSVCRT.dll_memcpy
mov eax, dword [0x454704]
add dword [ebp - 4], edi
mov byte [ebp + edi - 0x13cc], bl
mov dword [ebp - 0x5a], edi
mov eax, dword [eax + 0x20]
add esp, 0xc
cmp edi, dword [eax + 0x38]
jg 0x40e2f8
mov byte [ebp - 0xc5], bl
mov dword [ebp - 0xc], ebx
mov eax, dword [0x454704]
mov eax, dword [eax + 0x20]
cmp dword [eax + 0x44], ebx
lea eax, [ebp - 8]
push eax
lea eax, [ebp - 0x2c]
push eax
lea eax, [ebp - 0x13cc]
push eax
lea eax, [ebp - 0x28]
push edi
push eax
lea eax, [ebp - 0x1d4]
push eax
push dword [esi + 0x85b8]
push dword [esi + 0x85b4]
jne 0x40e336
call sub.kcxpapi.dll_KCXP_Put
jmp 0x40e33b
call sub.kcxpapi.dll_KCXP_Put2
cmp dword [ebp - 0x2c], 2
jne 0x40e3d2
mov ecx, esi
call fcn.004099fd
test al, al
jne 0x40e3f7
lea eax, [ebp - 0x2d4]
push eax
lea eax, [ebp - 0x3d4]
push eax
push dword [ebp - 8]
call sub.kcxpapi.dll_KCXP_ErrInfo
lea eax, [ebp - 0x3d4]
push eax
push dword [ebp - 8]
push str.KCXP_Put_failure_reason_d__s
push 0x7d1
push ebx
call fcn.00426a9a
push dword [ebp - 8]
call fcn.0041db9c
add esp, 0x18
test al, al
je 0x40e3d2
push dword [esi + 0x85d8]
lea eax, [esi + 0x85a8]
push dword [esi + 0x85f0]
push eax
call fcn.0041dbc2
add esp, 0xc
test al, al
jne 0x40e3c5
push str.RestoreConnection_fail
push 0x7d1
push ebx
call fcn.00426a9a
add esp, 0xc
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], 2
jl 0x40e2fb
cmp dword [esi + 0x8524], 1
jne 0x40e3ea
lea eax, [ebp - 0x13cc]
push edi
push eax
mov ecx, esi
call fcn.0040e41e
mov eax, dword [ebp + 0xc]
cmp dword [ebp - 4], eax
jge 0x40e3fb
jmp 0x40e1e7
xor al, al
jmp 0x40e417
mov eax, dword [esi + 0x33c]
add eax, 0x10
push eax
push str._s_answer_end
push 5
push ebx
call fcn.00426a9a
add esp, 0x10
mov al, 1
pop edi
pop esi
pop ebx
leave
ret 8