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

Disassembly:
sub esp, 0x2cc
push ebx
push ebp
push esi
mov ebx, ecx
mov dword [esp + 0x18], edx
push edi
mov dword [esp + 0x38], ebx
xor esi, esi
mov dword [esp + 0x10], 0xab849bd2
mov byte [esp + 0x14], 0xdd
mov al, byte [esp + esi + 0x10]
xor al, 0xf7
movzx eax, al
mov word [esp + esi*2 + 0x4c], ax
inc esi
cmp esi, 5
jl 0x41e3af
xor eax, eax
mov ecx, 0x26a2
mov word [esp + 0x56], ax
movzx eax, byte [0x42bb32]
add ax, cx
mov word [0x42bb14], ax
lea eax, [esp + 0x4c]
push ebx
push eax
call fcn.0042318b
movzx edx, byte [0x42bb32]
mov ebp, eax
pop ecx
pop ecx
mov ecx, 0x1edd
mov dword [esp + 0x10], ebp
imul edx, ecx
mov word [0x42bb14], dx
test ebp, ebp
je 0x41e899
and edx, 0x4306
xor ecx, ecx
mov word [0x42bb14], dx
inc ecx
lea eax, [edx + 0x5132]
mov edx, 0x54e1cc7b
mov word [0x42bb80], ax
sub al, 0x57
mov byte [0x42bb32], al
lea eax, [esp + 0x88]
push eax
push ebp
call fcn.0041568d
call eax
movzx ecx, byte [0x42bb80]
mov esi, eax
imul ecx, ecx, 0x63
mov eax, 0x7596
mov edx, 0x17299c7b
mov dword [esp + 0x3c], esi
movzx ecx, cl
xor cx, ax
mov word [0x42bb14], cx
and cl, 0xe0
mov byte [0x42bb32], cl
xor ecx, ecx
inc ecx
call fcn.0041568d
mov dx, word [0x42bb14]
mov ecx, 0x16ff
add ecx, edx
mov dword [esp + 0x40], eax
mov word [0x42bb80], cx
add cl, 0x53
cmp esi, 0xffffffff
je 0x41e87a
mov ebp, dword [esp + 0x1c]
mov edx, 0x8543
mov word [esp + 0x18], 0xf2f2
mov edi, 0xff
mov dword [esp + 0x20], 0x93aaa35c
mov word [esp + 0x24], 0xa35c
mov byte [esp + 0x26], 0xaa
push 0x2e
pop eax
mov word [esp + 0x1c], ax
xor eax, eax
mov word [esp + 0x1e], ax
xor ecx, ecx
movzx eax, byte [esp + ecx + 0x18]
add ax, 0x3c
and ax, di
mov word [esp + ecx*2 + 0x44], ax
inc ecx
cmp ecx, 2
jl 0x41e4df
xor eax, eax
xor ecx, ecx
mov word [esp + 0x48], ax
movzx eax, byte [esp + ecx + 0x20]
sub ax, 0x37
and ax, di
mov word [esp + ecx*2 + 0x58], ax
inc ecx
cmp ecx, 7
jl 0x41e4ff
xor eax, eax
mov ecx, 0x1820
mov word [esp + 0x66], ax
mov eax, 0x6527
add ax, dx
or ax, cx
mov ecx, 0xdd14
mov word [0x42bb80], ax
and al, 0xdf
mov byte [0x42bb32], al
movzx eax, al
and ax, cx
mov word [0x42bb14], ax
lea eax, [esp + 0x1c]
push eax
lea eax, [esp + 0xb8]
push eax
call fcn.00405af6
pop ecx
pop ecx
test eax, eax
je 0x41e81d
lea eax, [esp + 0x44]
push eax
lea eax, [esp + 0xb8]
push eax
call fcn.00405af6
pop ecx
pop ecx
test eax, eax
je 0x41e81d
mov al, byte [0x42bb80]
mov ecx, 0x4b51
and al, 0xb2
mov byte [0x42bb32], al
movzx eax, al
or ax, cx
mov word [0x42bb80], ax
lea eax, [esp + 0xb4]
push eax
lea eax, [esp + 0x5c]
push ebx
push eax
call fcn.0042318b
mov dl, byte [0x42bb32]
mov ecx, 0x89f2
xor cx, word [0x42bb80]
mov edi, eax
sub dl, 0x31
mov word [0x42bb14], cx
add esp, 0xc
mov byte [0x42bb32], dl
test edi, edi
je 0x41e7fb
lea eax, [edx + 0x59]
mov ecx, 0xfdf5
movzx edx, dl
and dx, cx
mov byte [0x42bb32], al
mov ecx, 0xf7f7
xor dx, cx
mov ecx, 0x75b5
or dx, cx
mov ecx, 0x6fe4
sub dx, cx
test byte [esp + 0x88], 0x10
mov word [0x42bb14], dx
je 0x41e6e9
mov dword [esp + 0x28], 0x96cad59c
xor ecx, ecx
mov word [esp + 0x2c], 0xd59c
mov byte [esp + 0x2e], 0xca
mov al, byte [esp + ecx + 0x28]
xor al, 0xb9
movzx eax, al
mov word [esp + ecx*2 + 0x68], ax
inc ecx
cmp ecx, 7
jl 0x41e638
xor eax, eax
mov word [esp + 0x76], ax
mov al, dl
and al, 0x3d
mov byte [0x42bb32], al
mov eax, 0x5976
and dx, ax
lea eax, [esp + 0xb4]
push eax
lea eax, [esp + 0x6c]
mov word [0x42bb80], dx
push ebp
push eax
call fcn.0042318b
mov dx, word [0x42bb80]
mov esi, eax
mov eax, 0x30ee
add esp, 0xc
and word [0x42bb14], ax
lea ecx, [edx - 0x7a]
mov byte [0x42bb32], cl
test esi, esi
je 0x41e6f6
movzx eax, cl
mov edx, esi
mov ecx, 0x2c4
add ax, cx
mov ecx, edi
mov word [0x42bb80], ax
and al, 0x36
mov byte [0x42bb32], al
call fcn.0041e38c
movzx eax, byte [0x42bb32]
mov ecx, 0x5edf
add ax, cx
push esi
mov word [0x42bb80], ax
call fcn.004056f0
mov dx, word [0x42bb80]
pop ecx
jmp 0x41e6f6
and edx, 0x8c76
mov word [0x42bb80], dx
test byte [esp + 0x88], 0xa7
je 0x41e7e7
mov dword [esp + 0x30], 0x7a263970
xor ecx, ecx
mov word [esp + 0x34], 0x3970
mov byte [esp + 0x36], 0x26
mov al, byte [esp + ecx + 0x30]
xor al, 0x55
movzx eax, al
mov word [esp + ecx*2 + 0x78], ax
inc ecx
cmp ecx, 7
jl 0x41e71a
xor eax, eax
mov ecx, 0x71d0
mov word [esp + 0x86], ax
mov ax, dx
and ax, cx
mov word [0x42bb14], ax
mov eax, 0x8547
and dx, ax
mov eax, 0x6dd9
movzx ecx, dx
imul ecx, eax
lea eax, [esp + 0xb4]
push eax
lea eax, [esp + 0x7c]
push ebp
push eax
mov word [0x42bb80], cx
call fcn.0042318b
mov dx, word [0x42bb80]
mov esi, eax
mov ecx, 0xd96
mov eax, 0xa1d2
add ecx, edx
add esp, 0xc
or dx, ax
movzx ebx, cx
mov word [0x42bb14], cx
mov word [0x42bb80], dx
test esi, esi
je 0x41e7e3
lea eax, [ebx + 0x14]
mov edx, esi
mov byte [0x42bb32], al
xor ebx, 0xaf93
imul eax, ebx, 0x3c8b
mov ecx, edi
mov word [0x42bb80], ax
call fcn.0041e300
mov eax, 0xc511
and word [0x42bb80], ax
push esi
call fcn.004056f0
mov dx, word [0x42bb80]
pop ecx
mov ebx, dword [esp + 0x38]
xor dl, 0x22
push edi
mov byte [0x42bb32], dl
call fcn.004056f0
mov esi, dword [esp + 0x40]
pop ecx
mov edi, 0xff
lea eax, [esp + 0x88]
push eax
push esi
call dword [esp + 0x48]
test eax, eax
je 0x41e847
mov dx, word [0x42bb80]
jmp 0x41e4ce
mov eax, 0x393d
mov ecx, 0x3af7
xor word [0x42bb14], ax
movzx eax, byte [0x42bb32]
xor ax, cx
mov word [0x42bb80], ax
and al, 0xd
mov byte [0x42bb32], al
jmp 0x41e800
mov eax, 0x2f1
xor ecx, ecx
xor ax, word [0x42bb80]
mov edx, 0x83fbc401
push esi
inc ecx
mov word [0x42bb14], ax
call fcn.0041568d
call eax
mov dx, word [0x42bb14]
mov cl, byte [0x42bb32]
mov ebp, dword [esp + 0x10]
mov eax, 0x7f7d
add cl, 0x26
xor dx, ax
mov byte [0x42bb32], cl
push ebp
mov word [0x42bb14], dx
call fcn.004056f0
pop ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x2cc
ret