Function at 0x462a00
Capabilities:
Encode data using xor
Resolve function by parsing pe exports

Disassembly:
sub esp, 0xf0
mov ecx, dword [esp + 0xf4]
push ebx
push ebp
push esi
mov esi, dword [esp + 0x104]
xor ebp, ebp
push edi
mov dword [esp + 0x44], ebp
mov dword [esp + 0x48], ebp
mov dword [esp + 0x4c], ebp
mov dword [esp + 0x50], ebp
mov dword [esp + 0x54], ebp
mov dword [esp + 0x58], ebp
mov dword [esp + 0x5c], ebp
mov dword [esp + 0x60], ebp
mov dword [esp + 0x64], ebp
mov dword [esp + 0x68], ebp
mov dword [esp + 0x6c], ebp
mov dword [esp + 0x70], ebp
mov dword [esp + 0x74], ebp
mov dword [esp + 0x78], ebp
mov dword [esp + 0x7c], ebp
mov dword [esp + 0x80], ebp
mov edx, esi
mov eax, dword [ecx]
add ecx, 4
mov ebx, dword [esp + eax*4 + 0x44]
lea eax, [esp + eax*4 + 0x44]
inc ebx
dec edx
mov dword [eax], ebx
jne 0x462a5f
cmp dword [esp + 0x44], esi
jne 0x462a97
mov ecx, dword [esp + 0x118]
mov edx, dword [esp + 0x11c]
xor eax, eax
mov dword [ecx], ebp
mov dword [edx], ebp
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xf0
ret
mov ebx, dword [esp + 0x11c]
mov ecx, 1
lea eax, [esp + 0x48]
mov edi, dword [ebx]
mov dword [esp + 0x10], edi
cmp dword [eax], ebp
jne 0x462aba
inc ecx
add eax, 4
cmp ecx, 0xf
jbe 0x462aad
mov eax, ecx
cmp edi, ecx
mov dword [esp + 0x14], eax
jae 0x462aca
mov dword [esp + 0x10], ecx
mov edi, ecx
mov edx, 0xf
lea esi, [esp + 0x80]
cmp dword [esi], ebp
jne 0x462ae2
dec edx
sub esi, 4
cmp edx, ebp
jne 0x462ad6
cmp edi, edx
mov dword [esp + 0x2c], edx
jbe 0x462af0
mov dword [esp + 0x10], edx
mov edi, edx
mov esi, 1
mov dword [ebx], edi
shl esi, cl
cmp ecx, edx
jae 0x462b0f
lea ebx, [esp + ecx*4 + 0x44]
sub esi, dword [ebx]
js 0x462b2a
inc ecx
add ebx, 4
shl esi, 1
cmp ecx, edx
jb 0x462b01
lea ecx, [edx*4]
mov dword [esp + 0x20], ecx
lea ebx, [esp + ecx + 0x44]
mov ecx, dword [esp + ecx + 0x44]
sub esi, ecx
mov dword [esp + 0x40], esi
jns 0x462b3a
mov eax, 0xfffffffd
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xf0
ret
add ecx, esi
mov dword [esp + 0x88], ebp
mov dword [ebx], ecx
xor ecx, ecx
dec edx
je 0x462b5d
xor ebx, ebx
add ecx, dword [esp + ebx + 0x48]
add ebx, 4
dec edx
mov dword [esp + ebx + 0x88], ecx
jne 0x462b4c
mov edx, dword [esp + 0x104]
xor ebx, ebx
mov ecx, dword [edx]
add edx, 4
cmp ecx, ebp
mov dword [esp + 0x1c], edx
je 0x462b95
mov edx, dword [esp + ecx*4 + 0x84]
mov ebp, dword [esp + 0x128]
lea ecx, [esp + ecx*4 + 0x84]
mov dword [ebp + edx*4], ebx
inc edx
mov dword [ecx], edx
mov edx, dword [esp + 0x1c]
xor ebp, ebp
mov ecx, dword [esp + 0x108]
inc ebx
cmp ebx, ecx
jb 0x462b66
mov ecx, dword [esp + 0x20]
mov ebx, edi
neg ebx
mov edx, dword [esp + ecx + 0x84]
mov ecx, dword [esp + 0x128]
mov dword [esp + 0x1c], ecx
mov ecx, dword [esp + 0x2c]
cmp eax, ecx
mov dword [esp + 0x108], edx
mov dword [esp + 0x24], ebp
mov dword [esp + 0x84], ebp
mov dword [esp + 0x18], 0xffffffff
mov dword [esp + 0xc4], ebp
mov dword [esp + 0x3c], ebp
jg 0x462e6e
mov esi, dword [esp + 0x34]
lea edx, [esp + eax*4 + 0x44]
mov dword [esp + 0x28], edx
mov ecx, dword [esp + 0x28]
mov ecx, dword [ecx]
mov edx, ecx
dec ecx
test edx, edx
mov dword [esp + 0x20], ecx
je 0x462e4c
lea ecx, [ebx + edi]
cmp eax, ecx
jle 0x462d20
mov dword [esp + 0x38], ecx
jmp 0x462c26
mov edi, dword [esp + 0x10]
mov eax, dword [esp + 0x14]
mov edx, dword [esp + 0x2c]
mov ebp, dword [esp + 0x18]
mov ecx, dword [esp + 0x38]
add ebx, edi
sub edx, ebx
inc ebp
add ecx, edi
cmp edx, edi
mov dword [esp + 0x18], ebp
mov dword [esp + 0x38], ecx
jbe 0x462c47
mov edx, edi
mov ebp, dword [esp + 0x20]
mov ecx, eax
sub ecx, ebx
mov eax, 1
shl eax, cl
lea edi, [ebp + 1]
cmp eax, edi
jbe 0x462c84
or edi, 0xffffffff
sub edi, ebp
mov ebp, dword [esp + 0x28]
add eax, edi
cmp ecx, edx
jae 0x462c84
inc ecx
cmp ecx, edx
jae 0x462c84
mov edi, dword [ebp + 4]
add ebp, 4
shl eax, 1
cmp eax, edi
jbe 0x462c84
sub eax, edi
inc ecx
cmp ecx, edx
jb 0x462c71
mov eax, dword [esp + 0x124]
mov edx, 1
shl edx, cl
mov eax, dword [eax]
mov dword [esp + 0x3c], edx
lea edi, [eax + edx]
cmp edi, 0x5a0
ja 0x462e96
mov edx, dword [esp + 0x120]
lea ebp, [edx + eax*8]
mov eax, dword [esp + 0x18]
lea edx, [esp + eax*4 + 0xc4]
mov eax, dword [esp + 0x124]
mov dword [eax], edi
mov eax, dword [esp + 0x18]
test eax, eax
mov dword [edx], ebp
je 0x462d07
mov esi, dword [esp + 0x24]
mov byte [esp + 0x30], cl
mov dword [esp + eax*4 + 0x84], esi
mov eax, dword [esp + 0x10]
mov ecx, ebx
mov byte [esp + 0x31], al
sub ecx, eax
mov eax, esi
shr eax, cl
mov ecx, dword [edx - 4]
mov edx, dword [esp + 0x30]
mov esi, ebp
sub esi, ecx
sar esi, 3
sub esi, eax
mov dword [ecx + eax*8], edx
mov dword [ecx + eax*8 + 4], esi
jmp 0x462d10
mov eax, dword [esp + 0x118]
mov dword [eax], ebp
mov ecx, dword [esp + 0x38]
mov eax, dword [esp + 0x14]
cmp eax, ecx
jg 0x462c1e
mov ecx, dword [esp + 0x128]
mov dl, al
mov edi, dword [esp + 0x1c]
sub dl, bl
mov byte [esp + 0x31], dl
mov edx, dword [esp + 0x108]
lea ecx, [ecx + edx*4]
cmp edi, ecx
jb 0x462d48
mov byte [esp + 0x30], 0xc0
jmp 0x462d90
mov esi, dword [edi]
mov ecx, dword [esp + 0x10c]
cmp esi, ecx
jae 0x462d69
cmp esi, 0x100
sbb edx, edx
and edx, 0xffffffa0
add edx, 0x60
mov byte [esp + 0x30], dl
jmp 0x462d89
sub esi, ecx
mov ecx, dword [esp + 0x114]
shl esi, 2
mov dl, byte [esi + ecx]
mov ecx, dword [esp + 0x110]
add dl, 0x50
mov esi, dword [esi + ecx]
mov byte [esp + 0x30], dl
add edi, 4
mov dword [esp + 0x1c], edi
mov ecx, eax
mov eax, dword [esp + 0x24]
sub ecx, ebx
mov edx, 1
shl edx, cl
mov ecx, ebx
shr eax, cl
cmp eax, dword [esp + 0x3c]
jae 0x462dc7
lea ecx, [ebp + eax*8]
mov edi, dword [esp + 0x30]
add eax, edx
mov dword [ecx], edi
lea edi, [edx*8]
mov dword [ecx + 4], esi
add ecx, edi
cmp eax, dword [esp + 0x3c]
jb 0x462dad
mov edx, dword [esp + 0x14]
mov eax, 1
lea ecx, [edx - 1]
mov edx, dword [esp + 0x24]
shl eax, cl
test edx, eax
je 0x462de5
xor edx, eax
shr eax, 1
test edx, eax
jne 0x462ddd
mov edi, 1
mov ecx, ebx
xor edx, eax
mov eax, dword [esp + 0x18]
shl edi, cl
mov ecx, dword [esp + eax*4 + 0x84]
lea eax, [esp + eax*4 + 0x84]
mov dword [esp + 0x24], edx
dec edi
and edi, edx
cmp edi, ecx
je 0x462e31
mov edi, dword [esp + 0x18]
sub eax, 4
dec edi
mov dword [esp + 0x18], edi
mov edi, dword [esp + 0x10]
sub ebx, edi
mov edi, 1
mov ecx, ebx
shl edi, cl
mov ecx, dword [eax]
dec edi
and edi, edx
cmp edi, ecx
jne 0x462e0d
mov eax, dword [esp + 0x20]
mov edi, dword [esp + 0x10]
mov ecx, eax
dec eax
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x14]
test ecx, ecx
jne 0x462c0d
mov edx, dword [esp + 0x28]
mov ecx, dword [esp + 0x2c]
inc eax
add edx, 4
cmp eax, ecx
mov dword [esp + 0x14], eax
mov dword [esp + 0x28], edx
jle 0x462bf8
mov esi, dword [esp + 0x40]
xor ebp, ebp
cmp esi, ebp
je 0x462e89
cmp dword [esp + 0x2c], 1
je 0x462e89
mov eax, 0xfffffffb
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xf0
ret
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xf0
ret
pop edi
pop esi
pop ebp
mov eax, 0xfffffffc
pop ebx
add esp, 0xf0
ret