Function at 0x420cfc
Capabilities:
Encode data using xor

Disassembly:
mov eax, 0x469a99
call fcn.004685c0
sub esp, 0x194
cmp byte [0x48eaa4], 0
push ebx
push esi
mov esi, ecx
push edi
mov dword [ebp - 0x14], esi
jne 0x4214c8
mov cl, 0x23
mov dword [ebp - 0x24], 0xb0a9b223
mov word [ebp - 0x20], 0xb0
xor edx, edx
not cl
xor byte [ebp + edx - 0x23], cl
inc edx
cmp edx, 4
jae 0x420d2b
mov cl, byte [ebp - 0x24]
jmp 0x420d1a
lea edx, [ebp - 0x23]
mov byte [ebp - 0x1f], 0
mov ecx, esi
call fcn.00414712
xor ebx, ebx
inc ebx
test al, al
jne 0x42148c
cmp dword [0x48b2f8], 0x10
mov edx, 0x48b2e4
mov edi, 0x48b1f4
cmovae edx, dword [0x48b2e4]
mov ecx, edi
cmp dword [0x48b208], 0x10
cmovae ecx, dword [0x48b1f4]
call fcn.004354d9
mov esi, eax
call fcn.00435972
mov edx, esi
mov ecx, eax
call fcn.004354d9
mov byte [ebp - 0x5c], 0
lea edx, [ebp - 0x24]
push dword [ebp - 0x5c]
lea ecx, [ebp - 0x58]
mov dword [ebp - 0x24], eax
call fcn.004157f9
pop ecx
and dword [ebp - 4], 0
lea ecx, [ebp - 0x58]
call fcn.00416034
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x58]
mov bl, al
call fcn.00413b3d
test bl, bl
jne 0x420fc6
cmp dword [0x48b208], 0x10
mov esi, edi
cmovae esi, dword [0x48b1f4]
call fcn.00435972
mov edx, esi
mov ecx, eax
call fcn.004354d9
and dword [ebp - 0x64], 0
lea ecx, [ebp - 0x74]
push eax
mov dword [ebp - 0x60], 0xf
mov byte [ebp - 0x74], bl
call fcn.00413d68
lea ecx, [ebp - 0x74]
call fcn.0040d215
lea ecx, [ebp - 0x74]
call fcn.00413d07
cmp dword [0x48b088], 0x10
mov ebx, 0x48b074
mov edx, ebx
mov ecx, edi
cmovae edx, dword [0x48b074]
cmp dword [0x48b208], 0x10
cmovae ecx, dword [0x48b1f4]
call fcn.004354d9
mov esi, eax
call fcn.00435972
mov edx, esi
mov ecx, eax
call fcn.004354d9
and dword [ebp - 0x48], 0
lea ecx, [ebp - 0x58]
push 0xf
pop esi
push eax
mov dword [ebp - 0x44], esi
mov byte [ebp - 0x58], 0
call fcn.00413d68
mov dword [ebp - 4], 1
mov eax, dword [ebp - 0x14]
cmp dword [eax + 0x14], 0x10
jb 0x420e61
mov eax, dword [eax]
and dword [ebp - 0x64], 0
lea ecx, [ebp - 0x74]
push eax
mov dword [ebp - 0x60], esi
mov byte [ebp - 0x74], 0
call fcn.00413d68
lea edx, [ebp - 0x58]
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x74]
call fcn.00434198
lea ecx, [ebp - 0x74]
call fcn.00413d07
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x58]
call fcn.00413d07
cmp dword [0x48b208], 0x10
mov esi, edi
cmovae esi, dword [0x48b1f4]
call fcn.00435972
mov edx, esi
mov ecx, eax
call fcn.004354d9
push eax
call dword [0x46d174]
cmp dword [0x48b088], 0x10
mov edx, ebx
mov ecx, edi
cmovae edx, dword [0x48b074]
cmp dword [0x48b208], 0x10
cmovae ecx, dword [0x48b1f4]
call fcn.004354d9
mov esi, eax
call fcn.00435972
mov edx, esi
mov ecx, eax
call fcn.004354d9
push ecx
push ecx
mov ecx, eax
call fcn.00420b6f
mov esi, eax
or edx, 0xffffffff
lea eax, [ebp - 0x1a0]
mov ecx, esi
push eax
call fcn.00420bf3
mov eax, dword [ebp - 0x1a0]
add esp, 0xc
xor ebx, ebx
test eax, eax
jle 0x420f4d
mov edi, eax
lea eax, [ebp - 0x1a0]
mov edx, ebx
push eax
mov ecx, esi
call fcn.00420bf3
push ecx
lea eax, [ebp - 0x19c]
mov edx, ebx
push eax
mov ecx, esi
call fcn.00420c2f
add esp, 0xc
inc ebx
cmp ebx, edi
jl 0x420f1f
mov edi, 0x48b1f4
test esi, esi
je 0x420f5f
cmp dword [esi], 1
jne 0x420f5f
mov ecx, esi
call fcn.00420c5e
jmp 0x420f66
mov ecx, esi
call fcn.0043e7d5
cmp dword [0x48b088], 0x10
mov edx, 0x48b074
mov ecx, edi
cmovae edx, dword [0x48b074]
cmp dword [0x48b208], 0x10
cmovae ecx, dword [0x48b1f4]
call fcn.004354d9
mov esi, eax
call fcn.00435972
mov edx, esi
mov ecx, eax
call fcn.004354d9
and dword [ebp - 0x48], 0
lea ecx, [ebp - 0x58]
push eax
mov dword [ebp - 0x44], 0xf
mov byte [ebp - 0x58], 0
call fcn.00413d68
lea ecx, [ebp - 0x58]
call fcn.0040d1c6
lea ecx, [ebp - 0x58]
call fcn.00413d07
cmp dword [0x48b2f8], 0x10
mov edx, 0x48b2e4
mov ecx, edi
cmovae edx, dword [0x48b2e4]
cmp dword [0x48b208], 0x10
cmovae ecx, dword [0x48b1f4]
call fcn.004354d9
mov esi, eax
call fcn.00435972
mov edx, esi
mov ecx, eax
call fcn.004354d9
mov byte [ebp - 0x11], 0
lea edx, [ebp - 0x24]
push dword [ebp - 0x11]
lea ecx, [ebp - 0x58]
mov dword [ebp - 0x24], eax
call fcn.004157f9
pop ecx
lea ecx, [ebp - 0x58]
mov dword [ebp - 4], 3
call fcn.00416034
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x58]
mov bl, al
call fcn.00413b3d
test bl, bl
je 0x421489
cmp dword [0x48b2f8], 0x10
mov edx, 0x48b2e4
mov ecx, edi
cmovae edx, dword [0x48b2e4]
cmp dword [0x48b208], 0x10
cmovae ecx, dword [0x48b1f4]
call fcn.004354d9
mov esi, eax
call fcn.00435972
mov edx, esi
mov ecx, eax
call fcn.004354d9
mov byte [ebp - 0x11], 0
lea edx, [ebp - 0x24]
push dword [ebp - 0x11]
lea ecx, [ebp - 0x58]
mov dword [ebp - 0x24], eax
call fcn.004157f9
pop ecx
push 4
pop esi
lea ecx, [ebp - 0x58]
mov dword [ebp - 4], esi
call fcn.00415ff0
test edx, edx
jne 0x4210a8
cmp eax, 0x19000
ja 0x4210a8
xor ebx, ebx
mov byte [ebp - 0x3a], dl
inc ebx
jmp 0x4210ae
xor ebx, ebx
inc ebx
mov byte [ebp - 0x3a], bl
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x58]
call fcn.00413b3d
cmp byte [ebp - 0x3a], 0
je 0x42148c
mov al, 0x4e
mov dword [ebp - 0x24], 0xe5f0e14e
mov word [ebp - 0x20], 0xf9
xor ecx, ecx
not al
xor byte [ebp + ecx - 0x23], al
inc ecx
cmp ecx, esi
jae 0x4210e5
mov al, byte [ebp - 0x24]
jmp 0x4210d5
lea eax, [ebp - 0x23]
mov byte [ebp - 0x1f], 0
push eax
call fcn.0044759e
mov dword [ebp - 0x14], eax
pop ecx
test eax, eax
je 0x421171
cmp dword [0x48b208], 0x10
mov esi, edi
cmovae esi, dword [0x48b1f4]
call fcn.00435972
push 0
mov edx, esi
mov ecx, eax
call fcn.004354d9
push eax
push 0x47d344
push dword [ebp - 0x14]
call fcn.00435c3b
add esp, 0x10
mov dword [ebp - 0x14], 0xaebbaa05
xor edx, edx
mov word [ebp - 0x10], 0xc7b2
mov esi, eax
mov byte [ebp - 0xe], dl
mov cl, 5
mov eax, edx
not cl
xor byte [ebp + eax - 0x13], cl
inc eax
cmp eax, 5
jae 0x421154
mov cl, byte [ebp - 0x14]
jmp 0x421143
push edx
lea eax, [ebp - 0x13]
mov byte [ebp - 0xe], dl
push esi
push eax
call fcn.00435c3b
push eax
call fcn.0044b7cd
push esi
call fcn.0044061a
add esp, 0x14
cmp dword [0x48b2f8], 0x10
mov edx, 0x48b2e4
cmovae edx, dword [0x48b2e4]
cmp dword [0x48b208], 0x10
cmovae edi, dword [0x48b1f4]
mov ecx, edi
call fcn.004354d9
mov esi, eax
call fcn.00435972
mov edx, esi
mov ecx, eax
call fcn.004354d9
push eax
call dword [0x46d1ac]
mov esi, eax
test esi, esi
je 0x421503
mov byte [0x48eaa4], bl
mov al, 0x33
mov dword [ebp - 0x17], 0x9f9f8233
xor ecx, ecx
mov dword [ebp - 0x13], 0xa5a28593
mov word [ebp - 0xf], 0xb8
not al
xor byte [ebp + ecx - 0x16], al
inc ecx
cmp ecx, 8
jae 0x4211e9
mov al, byte [ebp - 0x17]
jmp 0x4211d8
mov edi, dword [0x46d1a4]
lea eax, [ebp - 0x16]
push eax
push esi
mov byte [ebp - 0xe], 0
call edi
mov dword [0x48eaa8], eax
xor ecx, ecx
mov al, 0x18
mov dword [ebp - 0x1b], 0xb4b4a918
mov dword [ebp - 0x17], 0x928fb4b8
mov dword [ebp - 0x13], 0x90888393
mov word [ebp - 0xf], 0x89
not al
xor byte [ebp + ecx - 0x1a], al
inc ecx
cmp ecx, 0xc
jae 0x42122f
mov al, byte [ebp - 0x1b]
jmp 0x42121e
lea eax, [ebp - 0x1a]
mov byte [ebp - 0xe], 0
push eax
push esi
call edi
movaps xmm0, xmmword [0x47f720]
xor ecx, ecx
mov dword [0x48eac4], eax
movups xmmword [ebp - 0x58], xmm0
mov dword [ebp - 0x48], 0x9a86a88f
mov dword [ebp - 0x44], 0x978c8fb0
mov byte [ebp - 0x40], 0
mov al, byte [ebp - 0x58]
not al
xor byte [ebp + ecx - 0x57], al
inc ecx
cmp ecx, 0x17
jb 0x42125e
lea eax, [ebp - 0x57]
mov byte [ebp - 0x40], 0
push eax
push esi
call edi
mov dword [0x48eac8], eax
mov cl, 0x22
mov dword [ebp - 0x1c], 0xec968d22
xor eax, eax
mov dword [ebp - 0x18], 0xaf9b82ec
mov dword [ebp - 0x14], 0xb18eb8b8
mov word [ebp - 0x10], 0xa9b2
mov byte [ebp - 0xe], 0
not cl
xor byte [ebp + eax - 0x1b], cl
inc eax
cmp eax, 0xd
jae 0x4212b1
mov cl, byte [ebp - 0x1c]
jmp 0x4212a0
lea eax, [ebp - 0x1b]
mov byte [ebp - 0xe], 0
push eax
push esi
call edi
movaps xmm0, xmmword [0x47fe00]
xor ecx, ecx
mov dword [0x48eab8], eax
movups xmmword [ebp - 0x37], xmm0
mov word [ebp - 0x27], 0xf2e3
mov byte [ebp - 0x25], 0
mov al, byte [ebp - 0x37]
not al
xor byte [ebp + ecx - 0x36], al
inc ecx
cmp ecx, 0x11
jb 0x4212d8
lea eax, [ebp - 0x36]
mov byte [ebp - 0x25], 0
push eax
push esi
call edi
movaps xmm0, xmmword [0x47f930]
xor ecx, ecx
mov dword [0x48eab4], eax
movups xmmword [ebp - 0x35], xmm0
mov byte [ebp - 0x25], 0
mov al, byte [ebp - 0x35]
not al
xor byte [ebp + ecx - 0x34], al
inc ecx
cmp ecx, 0xf
jb 0x421308
lea eax, [ebp - 0x34]
mov byte [ebp - 0x25], 0
push eax
push esi
call edi
mov dword [0x48eab0], eax
xor ecx, ecx
mov al, 0x2f
mov dword [ebp - 0x1b], 0xbca1a32f
mov dword [ebp - 0x17], 0xe3b5a4b9
mov dword [ebp - 0x13], 0xb5a0bf8f
mov word [ebp - 0xf], 0xbe
not al
xor byte [ebp + ecx - 0x1a], al
inc ecx
cmp ecx, 0xc
jae 0x421357
mov al, byte [ebp - 0x1b]
jmp 0x421346
lea eax, [ebp - 0x1a]
mov byte [ebp - 0xe], 0
push eax
push esi
call edi
movaps xmm0, xmmword [0x47fa30]
xor ecx, ecx
mov dword [0x48ea9c], eax
movups xmmword [ebp - 0x38], xmm0
mov dword [ebp - 0x28], 0xf8bc95
mov al, byte [ebp - 0x38]
not al
xor byte [ebp + ecx - 0x37], al
inc ecx
cmp ecx, 0x12
jb 0x42137b
lea eax, [ebp - 0x37]
mov byte [ebp - 0x25], 0
push eax
push esi
call edi
mov dword [0x48eaac], eax
mov cl, 0x75
mov dword [ebp - 0x1b], 0xe6fbf975
xor eax, eax
mov dword [ebp - 0x17], 0xb9effee3
mov dword [ebp - 0x13], 0xeffef9d5
mov word [ebp - 0xf], 0xfa
not cl
xor byte [ebp + eax - 0x1a], cl
inc eax
cmp eax, 0xc
jae 0x4213ca
mov cl, byte [ebp - 0x1b]
jmp 0x4213b9
lea eax, [ebp - 0x1a]
mov byte [ebp - 0xe], 0
push eax
push esi
call edi
movaps xmm0, xmmword [0x47fc10]
xor ecx, ecx
mov dword [0x48eaa0], eax
movups xmmword [ebp - 0x39], xmm0
mov dword [ebp - 0x29], 0xfbf7eafb
mov byte [ebp - 0x25], 0
mov al, byte [ebp - 0x39]
not al
xor byte [ebp + ecx - 0x38], al
inc ecx
cmp ecx, 0x13
jb 0x4213f2
lea eax, [ebp - 0x38]
mov byte [ebp - 0x25], 0
push eax
push esi
call edi
movaps xmm0, xmmword [str.Accounts]
xor ecx, ecx
mov dword [0x48eac0], eax
movups xmmword [ebp - 0x36], xmm0
mov word [ebp - 0x26], 0xc4
mov al, byte [ebp - 0x36]
not al
xor byte [ebp + ecx - 0x35], al
inc ecx
cmp ecx, 0x10
jb 0x421424
lea eax, [ebp - 0x35]
mov byte [ebp - 0x25], 0
push eax
push esi
call edi
mov dword [0x48eacc], eax
mov cl, 0x40
mov dword [ebp - 0x33], 0xd3cecc40
xor eax, eax
mov dword [ebp - 0x2f], 0x8cdacbd6
mov dword [ebp - 0x2b], 0xd0d3dce0
mov word [ebp - 0x27], 0xdacc
mov byte [ebp - 0x25], 0
not cl
xor byte [ebp + eax - 0x32], cl
inc eax
cmp eax, 0xd
jae 0x421477
mov cl, byte [ebp - 0x33]
jmp 0x421466
lea eax, [ebp - 0x32]
mov byte [ebp - 0x25], 0
push eax
push esi
call edi
mov dword [0x48eabc], eax
jmp 0x42148c
xor ebx, ebx
inc ebx
cmp dword [0x48eaa8], 0
je 0x4214c2
cmp dword [0x48eac4], 0
je 0x4214c2
cmp dword [0x48eac8], 0
je 0x4214c2
cmp dword [0x48eab4], 0
je 0x4214c2
cmp dword [0x48eab0], 0
je 0x4214c2
cmp dword [0x48eab8], 0
jne 0x4214c4
xor ebx, ebx
mov eax, ebx
jmp 0x421505
cmp dword [0x48eaa8], 0
je 0x421503
cmp dword [0x48eac4], 0
je 0x421503
cmp dword [0x48eac8], 0
je 0x421503
cmp dword [0x48eab4], 0
je 0x421503
cmp dword [0x48eab0], 0
je 0x421503
cmp dword [0x48eab8], 0
je 0x421503
xor eax, eax
inc eax
jmp 0x421505
xor eax, eax
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
pop ebx
mov dword fs:[0], ecx
leave
ret