Function at 0x427c40
Capabilities:
Encode data using xor

Disassembly:
sub esp, 0x210
mov eax, dword [0x4921c0]
xor eax, esp
mov dword [esp + 0x208], eax
push ebx
push esi
push edi
jmp 0x427c60
mov edx, dword [0x52ab00]
mov ecx, dword [0x4e90a0]
lea esp, [esp]
mov al, byte [ecx + edx]
cmp al, 0x20
je 0x427c7b
cmp al, 9
jne 0x427c7e
inc ecx
jmp 0x427c70
movzx eax, byte [ecx + edx]
add eax, 0xffffffde
mov dword [0x4e90a0], ecx
cmp eax, 0x17
ja case.0x427c97.35
movzx eax, byte [eax + 0x427f1c]
jmp dword [eax*4 + 0x427f10]
lea edi, [esp + 0x10]
call fcn.004582f0
mov edi, dword [0x54099c]
mov bl, byte [esp + 0x10]
xor esi, esi
test edi, edi
jle 0x427d0e
jmp 0x427cc0
mov eax, dword [esi*4 + 0x646fb0]
mov cl, byte [eax]
cmp bl, cl
je 0x427cd7
movsx eax, cl
movsx ecx, bl
sub eax, ecx
jmp 0x427d05
lea ecx, [esp + 0x10]
jmp 0x427ce0
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x427d00
test dl, dl
je 0x427cfc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x427d00
add eax, 2
add ecx, 2
test dl, dl
jne 0x427ce0
xor eax, eax
jmp 0x427d05
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je case.0x427c97.34
inc esi
cmp esi, edi
jl 0x427cc0
mov edi, dword [0x4a86bc]
xor esi, esi
test edi, edi
jle 0x427df2
mov edi, edi
mov eax, dword [esi*4 + 0x58fab8]
mov cl, byte [eax]
cmp bl, cl
je 0x427db6
movsx eax, cl
movsx ecx, bl
sub eax, ecx
jmp 0x427de5
lea edx, [esp + 0x10]
push edx
call fcn.00423870
add esp, 4
cmp byte [0x498483], 0
jne 0x427d72
mov ecx, dword [0x5478cc]
lea eax, [esp + 0x10]
push eax
push 0x482734
push ecx
call fcn.0040a956
add esp, 0xc
jmp 0x427e04
lea edx, [esp + 0x10]
push edx
push 0x482738
push 0x547ae8
call fcn.00408143
mov al, byte [0x547ae8]
add esp, 0xc
mov esi, 0x547ae8
mov ecx, dword [0x5478cc]
movsx edx, al
push ecx
xor edx, 0x84
push edx
call fcn.0040af6c
mov al, byte [esi + 1]
inc esi
add esp, 8
test al, al
jne 0x427d93
jmp 0x427e04
lea ecx, [esp + 0x10]
lea ebx, [ebx]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x427de0
test dl, dl
je 0x427ddc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x427de0
add eax, 2
add ecx, 2
test dl, dl
jne 0x427dc0
xor eax, eax
jmp 0x427de5
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je case.0x427c97.37
inc esi
cmp esi, edi
jl 0x427d20
push str.csvwrite
push 0x482760
call fcn.00456ce0
add esp, 8
mov eax, dword [0x52ab00]
mov ecx, dword [0x4e90a0]
cmp byte [ecx + eax], 0x2c
jne 0x427ef6
call fcn.00401c90
cmp byte [0x498483], 0
jne 0x427eab
mov edx, dword [0x5478cc]
push 0x482768
push edx
call fcn.0040a956
add esp, 8
jmp 0x427c60
call fcn.00423750
cmp byte [0x498483], 0
push eax
jne 0x427e69
mov edx, dword [0x5478cc]
push 0x48272c
push edx
call fcn.0040a956
add esp, 0xc
jmp 0x427e04
push 0x482730
push 0x547ae8
call fcn.00408143
mov al, byte [0x547ae8]
add esp, 0xc
mov esi, 0x547ae8
mov ecx, dword [0x5478cc]
movsx edx, al
push ecx
xor edx, 0x84
push edx
call fcn.0040af6c
mov al, byte [esi + 1]
inc esi
add esp, 8
test al, al
jne 0x427e85
jmp 0x427e04
push 0x48276c
push 0x547ae8
call fcn.00408143
mov al, byte [0x547ae8]
add esp, 8
mov esi, 0x547ae8
jmp 0x427ed0
mov ecx, dword [0x5478cc]
movsx edx, al
push ecx
xor edx, 0x84
push edx
call fcn.0040af6c
mov al, byte [esi + 1]
inc esi
add esp, 8
test al, al
jne 0x427ed0
jmp 0x427c60
mov ecx, dword [esp + 0x214]
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.00407ed0
add esp, 0x210
ret