Function at 0x2c5e810
Capabilities:
Resolve function by parsing pe exports

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x2c5ebc4
sub esp, 0x64
lea eax, [0x2d0e7c0]
mov dword [esp], eax
mov dword [esp + 4], 0
mov ecx, dword [esp + 0x80]
mov edx, dword [esp + 0x8c]
lea ebx, [edx + ecx]
mov dword [esp + 0x30], ebx
mov dword [esp + 8], ebx
call fcn.02b274d0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x8c]
mov edx, dword [esp + 0x30]
cmp ecx, edx
jbe 0x2c5e89e
lea ebx, [0x2d0e7c0]
mov dword [esp], ebx
mov dword [esp + 4], eax
mov dword [esp + 8], 0
mov dword [esp + 0xc], edx
mov dword [esp + 0x10], ecx
call fcn.02b27650
mov eax, dword [esp + 0x14]
mov ebx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x8c]
mov edx, ebx
mov dword [esp + 0x34], edx
mov dword [esp + 0x50], eax
mov dword [esp], eax
mov ebx, dword [esp + 0x88]
mov dword [esp + 4], ebx
mov dword [esp + 8], ecx
call fcn.02b3f220
mov eax, dword [esp + 0x34]
mov ecx, dword [esp + 0x30]
cmp eax, ecx
jb 0x2c5e8cf
mov edx, dword [esp + 0x50]
jmp 0x2c5e906
lea edx, [0x2d0e7c0]
mov dword [esp], edx
mov ebx, dword [esp + 0x50]
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0x8c]
mov dword [esp + 8], ebx
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], ecx
call fcn.02b27650
mov eax, dword [esp + 0x14]
mov edx, dword [esp + 0x1c]
mov ecx, edx
mov edx, eax
mov eax, ecx
mov dword [esp + 0x34], eax
mov dword [esp + 0x50], edx
mov ecx, dword [esp + 0x8c]
add ecx, edx
mov dword [esp], ecx
mov ecx, dword [esp + 0x7c]
mov dword [esp + 4], ecx
mov ecx, dword [esp + 0x80]
mov dword [esp + 8], ecx
call fcn.02b3f220
lea eax, [0x2d0e7c0]
mov dword [esp], eax
mov eax, dword [esp + 0x94]
shl eax, 1
mov edx, dword [esp + 0x98]
lea eax, [eax + edx*2]
mov ebx, dword [esp + 0x9c]
lea eax, [eax + ebx*2]
mov dword [esp + 0x38], eax
mov dword [esp + 4], eax
mov dword [esp + 8], eax
call fcn.02b274d0
mov eax, dword [esp + 0xc]
mov dword [esp + 0x60], eax
movzx ecx, word [esp + 0x68]
mov word [esp], cx
mov ecx, dword [esp + 0x6c]
mov dword [esp + 4], ecx
call fcn.02c5e570
mov edx, dword [esp + 8]
mov eax, dword [edx]
mov ecx, dword [str.key_expansion]
mov ebx, dword [0x30f1a6c]
mov ebp, dword [0x30f1a70]
mov esi, dword [esp + 0x60]
mov dword [esp], esi
mov edi, dword [esp + 0x38]
mov dword [esp + 4], edi
mov dword [esp + 8], edi
mov esi, dword [esp + 0x70]
mov dword [esp + 0xc], esi
mov esi, dword [esp + 0x74]
mov dword [esp + 0x10], esi
mov esi, dword [esp + 0x78]
mov dword [esp + 0x14], esi
mov dword [esp + 0x18], ecx
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x20], ebp
mov ecx, dword [esp + 0x50]
mov dword [esp + 0x24], ecx
mov ecx, dword [esp + 0x30]
mov dword [esp + 0x28], ecx
mov ecx, dword [esp + 0x34]
mov dword [esp + 0x2c], ecx
call eax
mov ecx, dword [esp + 0x94]
mov edx, dword [esp + 0x38]
cmp ecx, edx
ja 0x2c5ebbe
mov ebx, edx
sub edx, ecx
mov ebp, edx
neg edx
sar edx, 0x1f
and edx, ecx
mov esi, dword [esp + 0x60]
lea edi, [edx + esi]
cmp ecx, ebp
ja 0x2c5ebb7
ja 0x2c5ebae
mov dword [esp + 0x4c], ebp
mov edx, ebp
sub edx, ecx
mov eax, edx
neg edx
sar edx, 0x1f
and edx, ecx
lea ebp, [edi + edx]
mov edx, edi
mov edi, dword [esp + 0x98]
cmp edi, eax
ja 0x2c5eba5
ja 0x2c5eb9c
mov dword [esp + 0x48], eax
mov dword [esp + 0x54], ebp
sub eax, edi
mov dword [esp + 0x3c], eax
neg eax
sar eax, 0x1f
and eax, edi
add ebp, eax
mov eax, ebx
mov ebx, dword [esp + 0x3c]
cmp edi, ebx
ja 0x2c5eb93
ja 0x2c5eb8a
mov dword [esp + 0x5c], ebp
sub ebx, edi
mov dword [esp + 0x44], ebx
neg ebx
sar ebx, 0x1f
and ebx, edi
add ebx, ebp
mov ebp, dword [esp + 0x9c]
mov edi, dword [esp + 0x44]
cmp ebp, edi
ja 0x2c5eb81
ja 0x2c5eb78
sub edi, ebp
mov dword [esp + 0x40], edi
xchg edi, ebx
neg ebx
xchg edi, ebx
sar edi, 0x1f
and edi, ebp
add edi, ebx
mov dword [esp + 0x58], edi
mov edi, dword [esp + 0x40]
cmp ebp, edi
ja 0x2c5eb6f
mov dword [esp + 0xa0], esi
mov dword [esp + 0xa4], ecx
mov dword [esp + 0xa8], eax
mov dword [esp + 0xac], edx
mov dword [esp + 0xb0], ecx
mov eax, dword [esp + 0x4c]
mov dword [esp + 0xb4], eax
mov eax, dword [esp + 0x54]
mov dword [esp + 0xb8], eax
mov eax, dword [esp + 0x98]
mov dword [esp + 0xbc], eax
mov ecx, dword [esp + 0x48]
mov dword [esp + 0xc0], ecx
mov ecx, dword [esp + 0x5c]
mov dword [esp + 0xc4], ecx
mov dword [esp + 0xc8], eax
mov eax, dword [esp + 0x3c]
mov dword [esp + 0xcc], eax
mov dword [esp + 0xd0], ebx
mov dword [esp + 0xd4], ebp
mov eax, dword [esp + 0x44]
mov dword [esp + 0xd8], eax
mov eax, dword [esp + 0x58]
mov dword [esp + 0xdc], eax
mov dword [esp + 0xe0], ebp
mov dword [esp + 0xe4], edi
add esp, 0x64
ret
mov ecx, ebp
mov edx, edi
call fcn.02b3e940
mov eax, ebp
mov ecx, edi
call fcn.02b3e960
mov ecx, ebp
mov edx, edi
call fcn.02b3e940
mov eax, edi
mov ecx, ebx
call fcn.02b3e960
mov ecx, edi
mov edx, ebx
call fcn.02b3e940
mov ecx, eax
mov eax, edi
call fcn.02b3e960
mov ecx, edi
mov edx, eax
call fcn.02b3e940
mov eax, ecx
mov ecx, ebp
call fcn.02b3e960
mov edx, ebp
call fcn.02b3e940
call fcn.02b3e940
nop
call fcn.02b3d440
jmp fcn.02c5e810