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

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x80
mov eax, dword [esp + 0x9c]
mov ebx, dword [esp + 0x98]
mov ecx, dword [eax + 4]
mov eax, 0xfffffffe
cmp word [ecx + eax + 2], 0
lea eax, [eax + 2]
jne 0x4254c0
mov ecx, 0xfffffffe
cmp word [ebx + ecx + 2], 0
lea ecx, [ecx + 2]
jne 0x4254d0
sar eax, 1
sar ecx, 1
lea edx, [eax + ecx]
add edx, 0x3f
test edx, edx
jns 0x4254f0
mov eax, 0xffffffff
jmp 0x4254f9
add eax, ecx
lea eax, [eax*2 + 0x7e]
push eax
call fcn.0040cdd0
add esp, 4
mov esi, eax
mov dword [esp + 0x44], 0xcf5bc96a
mov dword [esp + 0x48], 0xc367cd5b
mov dword [esp + 0x4c], 0xc701c156
mov dword [esp + 0x50], 0xbb28c557
mov dword [esp + 0x54], 0xbf1bb92c
mov dword [esp + 0x58], 0xb326bd34
mov dword [esp + 0x5c], 0xb712b109
mov dword [esp + 0x60], 0xab7eb579
mov dword [esp + 0x64], 0xaf67a97e
mov dword [esp + 0x68], 0xa36bad78
mov dword [esp + 0x6c], 0xa76da16a
mov dword [esp + 0x70], 0x9b53a572
mov dword [esp + 0x74], 0x9f32994d
mov dword [esp + 0x78], 0x93369d05
mov dword [esp + 0x7c], 0x97969136
mov ebp, 0x32
mov ecx, 0xd8f9b9cd
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx edx, byte [esp + ebp + 0x12]
mov edi, ecx
and edi, 0x80190014
mov eax, ebp
and eax, 0x6b
or eax, edi
lea edi, [ecx + 0x27064680]
and edi, 0x6b
xor edi, 0x602446b
or edi, eax
mov eax, edx
and eax, 0x14
or eax, 0x4082f561
and edx, 0xffffffeb
xor edx, eax
xor edx, 0xe19ff775
mov eax, edx
and eax, edi
add edx, edi
add eax, eax
sub edx, eax
add dl, 6
mov byte [esp + ebp + 0x12], dl
inc ebp
dec ecx
cmp ebp, 0x6e
jne 0x425590
mov dword [esp], 0x1fb07e0
mov dword [esp + 4], 0xdf303fc
mov dword [esp + 8], 0x9ed0ffe
mov dword [esp + 0xc], 0x15e50be1
mov dword [esp + 0x10], 0x11fa17f0
mov dword [esp + 0x14], 0x1dfc13ff
mov dword [esp + 0x18], 0x19e11fff
mov dword [esp + 0x1c], 0x25e61bec
mov dword [esp + 0x20], 0x21d127c0
mov dword [esp + 0x24], 0x2dd823d1
mov dword [esp + 0x28], 0x29c12f1b
mov dword [esp + 0x2c], 0x35d62bd0
mov dword [esp + 0x30], 0x31c037db
mov dword [esp + 0x34], 0x3dd933cd
mov dword [esp + 0x38], 0x39c83fcd
mov dword [esp + 0x3c], 0xc50f3b0d
mov dword [esp + 0x40], 0xc1c6c7f1
mov eax, esp
mov ecx, 0xbe
movzx edi, byte [eax]
lea edx, [ecx - 0x119e8300]
or edx, edi
and edi, ecx
not edx
or edx, edi
neg edx
mov edi, edx
and edi, 0x46
add edi, edi
xor edx, 0xb9
sub edx, edi
add dl, 2
mov byte [eax], dl
inc eax
dec ecx
cmp ecx, 0x7a
jne 0x425670
mov ebp, dword [esp + 0x9c]
mov ecx, dword [ebp + 4]
movzx edx, word [ecx]
mov eax, esi
test dx, dx
je 0x4256d1
add ecx, 2
mov eax, esi
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [eax], dx
add eax, 2
movzx edx, word [ecx]
add ecx, 2
test dx, dx
jne 0x4256c0
mov word [eax], 0
movzx ecx, word [esp]
test cx, cx
je 0x425701
lea edx, [esp + 2]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [edx]
add edx, 2
test cx, cx
jne 0x4256f0
mov word [eax], 0
movzx ecx, word [ebx]
test cx, cx
je 0x425731
add ebx, 2
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [ebx]
add ebx, 2
test cx, cx
jne 0x425720
mov word [eax], 0
movzx ecx, word [esp + 0x44]
test cx, cx
je 0x425761
lea edx, [esp + 0x46]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [edx]
add edx, 2
test cx, cx
jne 0x425750
mov word [eax], 0
mov eax, dword [esp + 0xa0]
mov ebx, dword [eax]
mov ecx, 0xfffffffe
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp word [ebx + ecx + 2], 0
lea ecx, [ecx + 2]
jne 0x425780
mov edx, dword [ebp]
mov eax, 0xfffffffe
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp word [edx + eax + 2], 0
lea eax, [eax + 2]
jne 0x4257a0
sar ecx, 1
sar eax, 1
add eax, ecx
lea edx, [eax + eax]
xor eax, 1
add eax, 0xa
mov edi, dword [ebp + 8]
mov ecx, 0xfffffffe
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp word [edi + ecx + 2], 0
lea ecx, [ecx + 2]
jne 0x4257d0
and edx, 2
add eax, edx
sar ecx, 1
add ecx, eax
jns 0x4257ed
mov ecx, 0xffffffff
jmp 0x4257ef
add ecx, ecx
push ecx
call fcn.0040cdd0
add esp, 4
mov edi, eax
mov dword [esp], 0x41e547fd
mov dword [esp + 4], 0x4dd643d4
mov dword [esp + 8], 0x49d24fe3
mov dword [esp + 0xc], 0xb51b4bd5
mov word [esp + 0x10], 0xb7b4
mov dword [esp + 0x12], 0
mov byte [esp + 0x16], 0
xor eax, eax
nop
mov ecx, eax
add cl, 0xf1
xor cl, byte [esp + eax]
add cl, 0x4b
mov byte [esp + eax], cl
inc eax
cmp eax, 0x17
jne 0x425830
movzx ecx, word [esp]
mov eax, edi
test cx, cx
je 0x425871
lea edx, [esp + 2]
mov eax, edi
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [edx]
add edx, 2
test cx, cx
jne 0x425860
mov word [eax], 0
movzx ecx, word [ebx]
test cx, cx
je 0x4258a1
add ebx, 2
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [ebx]
add ebx, 2
test cx, cx
jne 0x425890
mov word [eax], 0x5f
add eax, 2
mov ecx, dword [ebp]
movzx edx, word [ecx]
test dx, dx
je 0x4258d1
add ecx, 2
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [eax], dx
add eax, 2
movzx edx, word [ecx]
add ecx, 2
test dx, dx
jne 0x4258c0
mov word [eax], 0x5f
add eax, 2
mov ecx, dword [ebp + 8]
movzx edx, word [ecx]
test dx, dx
je 0x425901
add ecx, 2
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [eax], dx
add eax, 2
movzx edx, word [ecx]
add ecx, 2
test dx, dx
jne 0x4258f0
mov word [eax], 0
mov dword [esp], 0xc1c6c72e
mov dword [esp + 4], 0
xor eax, eax
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, eax
add cl, 0xb1
xor cl, byte [esp + eax]
add cl, 0x8b
mov byte [esp + eax], cl
inc eax
cmp eax, 8
jne 0x425920
mov eax, esp
push 0
push 1
push 0
push eax
push esi
push edi
push dword [esp + 0xac]
call fcn.00425d60
add esp, 0x1c
mov ebx, eax
jmp dword [0x44c964]