Function at 0x42b1c0
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x550936
mov eax, dword fs:[0]
push eax
sub esp, 0x760
mov eax, dword [0x5add48]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edx, ecx
xor eax, eax
mov dword [ebp - 0x724], 7
mov dword [ebp - 0x728], 0
mov word [ebp - 0x738], ax
cmp word [edx], ax
jne 0x42b215
xor ecx, ecx
jmp 0x42b22f
lea esi, [ecx + 2]
nop dword [eax + eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x42b220
sub ecx, esi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x738]
call fcn.00423500
lea edx, [ebp - 0x738]
mov dword [ebp - 4], 0
lea ecx, [ebp - 0x76c]
call fcn.0043ac20
mov eax, dword [ebp - 0x758]
cmp eax, 8
jb 0x42b272
inc eax
lea ecx, [ebp - 0x76c]
push eax
push dword [ebp - 0x76c]
call fcn.00424270
cmp dword [ebp - 0x728], 0
jne 0x42b282
xor bl, bl
jmp 0x42bd72
push 0x104
lea eax, [ebp - 0x118]
push 0
push eax
call fcn.00526ca0
add esp, 0xc
lea eax, [ebp - 0x720]
push 0x208
push 0
push eax
call fcn.00526ca0
sub esp, 0xc
mov ecx, esp
call fcn.00424c80
lea ecx, [ebp - 0x750]
call fcn.0043a6e0
push 0x400
lea eax, [ebp - 0x518]
mov byte [ebp - 4], 1
push 0
push eax
call fcn.00526ca0
mov ax, word [0x5b33d4]
add esp, 0x24
mov word [ebp - 0x510], ax
movq xmm0, qword [str._p_31___]
movq qword [ebp - 0x518], xmm0
mov al, byte [ebp - 0x518]
xor al, 0x4c
xor al, 0x23
xor al, 0x1c
xor al, 0x38
xor al, 0x30
xor al, 0x29
xor al, 4
xor al, 0x4a
xor al, 0x40
xor al, 0x18
xor al, 0x36
xor al, 0x30
xor al, 0x2b
xor al, 0x2e
xor al, 0x41
xor al, 0x5e
xor al, 0x54
xor al, 0xe
xor al, 0x4e
xor al, 0x33
xor al, 0x2b
mov byte [ebp - 0x518], al
mov al, byte [ebp - 0x517]
xor al, 0x4c
xor al, 0x23
xor al, 0x1c
xor al, 0x38
xor al, 0x30
xor al, 0x29
xor al, 4
xor al, 0x4a
xor al, 0x40
xor al, 0x18
xor al, 0x36
xor al, 0x30
xor al, 0x2b
xor al, 0x2e
xor al, 0x41
xor al, 0x5e
xor al, 0x54
xor al, 0xe
xor al, 0x4e
xor al, 0x33
xor al, 0x2b
mov byte [ebp - 0x517], al
mov al, byte [ebp - 0x516]
xor al, 0x4c
xor al, 0x23
xor al, 0x1c
xor al, 0x38
xor al, 0x30
xor al, 0x29
xor al, 4
xor al, 0x4a
xor al, 0x40
xor al, 0x18
xor al, 0x36
xor al, 0x30
xor al, 0x2b
xor al, 0x2e
xor al, 0x41
xor al, 0x5e
xor al, 0x54
xor al, 0xe
xor al, 0x4e
xor al, 0x33
xor al, 0x2b
mov byte [ebp - 0x516], al
mov al, byte [ebp - 0x515]
xor al, 0x4c
xor al, 0x23
xor al, 0x1c
xor al, 0x38
xor al, 0x30
xor al, 0x29
xor al, 4
xor al, 0x4a
xor al, 0x40
xor al, 0x18
xor al, 0x36
xor al, 0x30
xor al, 0x2b
xor al, 0x2e
xor al, 0x41
xor al, 0x5e
xor al, 0x54
xor al, 0xe
xor al, 0x4e
xor al, 0x33
xor al, 0x2b
mov byte [ebp - 0x515], al
mov al, byte [ebp - 0x514]
xor al, 0x4c
xor al, 0x23
xor al, 0x1c
xor al, 0x38
xor al, 0x30
xor al, 0x29
xor al, 4
xor al, 0x4a
xor al, 0x40
xor al, 0x18
xor al, 0x36
xor al, 0x30
xor al, 0x2b
xor al, 0x2e
xor al, 0x41
xor al, 0x5e
xor al, 0x54
xor al, 0xe
xor al, 0x4e
xor al, 0x33
xor al, 0x2b
mov byte [ebp - 0x514], al
mov al, byte [ebp - 0x513]
xor al, 0x4c
xor al, 0x23
xor al, 0x1c
xor al, 0x38
xor al, 0x30
xor al, 0x29
xor al, 4
xor al, 0x4a
xor al, 0x40
xor al, 0x18
xor al, 0x36
xor al, 0x30
xor al, 0x2b
xor al, 0x2e
xor al, 0x41
xor al, 0x5e
xor al, 0x54
xor al, 0xe
xor al, 0x4e
xor al, 0x33
xor al, 0x2b
mov byte [ebp - 0x513], al
mov al, byte [ebp - 0x512]
xor al, 0x4c
xor al, 0x23
xor al, 0x1c
xor al, 0x38
xor al, 0x30
xor al, 0x29
xor al, 4
xor al, 0x4a
xor al, 0x40
xor al, 0x18
xor al, 0x36
xor al, 0x30
xor al, 0x2b
xor al, 0x2e
xor al, 0x41
xor al, 0x5e
xor al, 0x54
xor al, 0xe
xor al, 0x4e
xor al, 0x33
xor al, 0x2b
mov byte [ebp - 0x512], al
mov al, byte [ebp - 0x511]
xor al, 0x4c
xor al, 0x23
xor al, 0x1c
xor al, 0x38
xor al, 0x30
xor al, 0x29
xor al, 4
xor al, 0x4a
xor al, 0x40
xor al, 0x18
xor al, 0x36
xor al, 0x30
xor al, 0x2b
xor al, 0x2e
xor al, 0x41
xor al, 0x5e
xor al, 0x54
xor al, 0xe
xor al, 0x4e
xor al, 0x33
xor al, 0x2b
mov byte [ebp - 0x511], al
mov al, byte [ebp - 0x510]
xor al, 0x4c
xor al, 0x23
xor al, 0x1c
xor al, 0x38
xor al, 0x30
xor al, 0x29
xor al, 4
xor al, 0x4a
xor al, 0x40
xor al, 0x18
xor al, 0x36
xor al, 0x30
xor al, 0x2b
xor al, 0x2e
xor al, 0x41
xor al, 0x5e
xor al, 0x54
xor al, 0xe
xor al, 0x4e
xor al, 0x33
xor al, 0x2b
mov byte [ebp - 0x510], al
mov al, byte [ebp - 0x50f]
xor al, 0x4c
xor al, 0x23
xor al, 0x1c
xor al, 0x38
xor al, 0x30
xor al, 0x29
xor al, 4
xor al, 0x4a
xor al, 0x40
xor al, 0x18
xor al, 0x36
xor al, 0x30
xor al, 0x2b
xor al, 0x2e
xor al, 0x41
xor al, 0x5e
xor al, 0x54
xor al, 0xe
xor al, 0x4e
xor al, 0x33
xor al, 0x2b
xor ecx, ecx
mov byte [ebp - 0x50f], al
mov al, byte [ebp + ecx - 0x518]
lea ecx, [ecx + 1]
mov byte [ebp + ecx - 0x119], al
test al, al
jne 0x42b515
sub esp, 0x18
mov edx, esp
mov dword [edx + 0x14], 0xf
mov dword [edx + 0x10], 0
mov byte [edx], al
cmp byte [ebp - 0x118], al
jne 0x42b54b
xor ecx, ecx
jmp 0x42b55d
lea ecx, [ebp - 0x118]
lea esi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x42b554
sub ecx, esi
push ecx
lea eax, [ebp - 0x118]
mov ecx, edx
push eax
call fcn.00424100
lea ecx, [ebp - 0x76c]
call fcn.0043a6e0
mov ecx, eax
add esp, 0x18
cmp dword [ecx + 0x14], 8
jb 0x42b584
mov ecx, dword [ecx]
lea edx, [ebp - 0x720]
nop word [eax + eax]
movzx eax, word [ecx]
lea ecx, [ecx + 2]
mov word [edx], ax
lea edx, [edx + 2]
test ax, ax
jne 0x42b590
mov eax, dword [ebp - 0x758]
cmp eax, 8
jb 0x42b5bf
inc eax
lea ecx, [ebp - 0x76c]
push eax
push dword [ebp - 0x76c]
call fcn.00424270
cmp word [ebp - 0x720], 0
jne 0x42b5cd
xor ecx, ecx
jmp 0x42b5e5
lea ecx, [ebp - 0x720]
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x42b5d6
sub ecx, edx
sar ecx, 1
push ecx
push 0
lea eax, [ebp - 0x720]
push eax
lea ecx, [ebp - 0x738]
call fcn.00421d30
cmp eax, 0xffffffff
je 0x42b61c
push 3
push 0
push 0x5a3b80
lea ecx, [ebp - 0x750]
call fcn.00421d30
cmp eax, 0xffffffff
jne 0x42bd31
push 0x400
lea eax, [ebp - 0x518]
push 0
push eax
call fcn.00526ca0
mov eax, dword [0x5b33c4]
add esp, 0xc
movq xmm0, qword [str._pgbd01___]
mov dword [ebp - 0x510], eax
mov al, byte [0x5b33c8]
mov byte [ebp - 0x50c], al
xor eax, eax
movq qword [ebp - 0x518], xmm0
nop word [eax + eax]
xor byte [ebp + eax - 0x518], 0x54
inc eax
cmp eax, 0xd
jb 0x42b660
xor ecx, ecx
mov al, byte [ebp + ecx - 0x518]
lea ecx, [ecx + 1]
mov byte [ebp + ecx - 0x119], al
test al, al
jne 0x42b670
sub esp, 0x18
mov edx, esp
mov dword [edx + 0x14], 0xf
mov dword [edx + 0x10], 0
mov byte [edx], al
cmp byte [ebp - 0x118], al
jne 0x42b6a6
xor ecx, ecx
jmp 0x42b6b9
lea ecx, [ebp - 0x118]
lea esi, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x42b6b0
sub ecx, esi
push ecx
lea eax, [ebp - 0x118]
mov ecx, edx
push eax
call fcn.00424100
lea ecx, [ebp - 0x76c]
call fcn.0043a6e0
mov ecx, eax
add esp, 0x18
cmp dword [ecx + 0x14], 8
jb 0x42b6e0
mov ecx, dword [ecx]
lea edx, [ebp - 0x720]
movzx eax, word [ecx]
lea ecx, [ecx + 2]
mov word [edx], ax
lea edx, [edx + 2]
test ax, ax
jne 0x42b6e6
mov eax, dword [ebp - 0x758]
cmp eax, 8
jb 0x42b715
inc eax
lea ecx, [ebp - 0x76c]
push eax
push dword [ebp - 0x76c]
call fcn.00424270
cmp word [ebp - 0x720], 0
jne 0x42b723
xor ecx, ecx
jmp 0x42b73f
lea ecx, [ebp - 0x720]
lea edx, [ecx + 2]
nop dword [eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x42b730
sub ecx, edx
sar ecx, 1
push ecx
push 0
lea eax, [ebp - 0x720]
push eax
lea ecx, [ebp - 0x738]
call fcn.00421d30
cmp eax, 0xffffffff
je 0x42b776
push 3
push 0
push 0x5a3b88
lea ecx, [ebp - 0x750]
call fcn.00421d30
cmp eax, 0xffffffff
jne 0x42bd31
push 0x400
lea eax, [ebp - 0x518]
push 0
push eax
call fcn.00526ca0
mov ax, word [0x5b33b8]
add esp, 0xc
movq xmm0, qword [0x5b33b0]
mov word [ebp - 0x510], ax
mov al, byte [0x5b33ba]
mov byte [ebp - 0x50e], al
xor eax, eax
movq qword [ebp - 0x518], xmm0
nop word [eax + eax]
xor byte [ebp + eax - 0x518], 0x54
inc eax
cmp eax, 0xb
jb 0x42b7c0
xor ecx, ecx
mov al, byte [ebp + ecx - 0x518]
lea ecx, [ecx + 1]
mov byte [ebp + ecx - 0x119], al
test al, al
jne 0x42b7d0
sub esp, 0x18
mov edx, esp
mov dword [edx + 0x14], 0xf
mov dword [edx + 0x10], 0
mov byte [edx], al
cmp byte [ebp - 0x118], al
jne 0x42b806
xor ecx, ecx
jmp 0x42b819
lea ecx, [ebp - 0x118]
lea esi, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x42b810
sub ecx, esi
push ecx
lea eax, [ebp - 0x118]
mov ecx, edx
push eax
call fcn.00424100
lea ecx, [ebp - 0x76c]
call fcn.0043a6e0
mov ecx, eax
add esp, 0x18
cmp dword [ecx + 0x14], 8
jb 0x42b840
mov ecx, dword [ecx]
lea edx, [ebp - 0x720]
movzx eax, word [ecx]
lea ecx, [ecx + 2]
mov word [edx], ax
lea edx, [edx + 2]
test ax, ax
jne 0x42b846
mov eax, dword [ebp - 0x758]
cmp eax, 8
jb 0x42b875
inc eax
lea ecx, [ebp - 0x76c]
push eax
push dword [ebp - 0x76c]
call fcn.00424270
cmp word [ebp - 0x720], 0
jne 0x42b883
xor ecx, ecx
jmp 0x42b89f
lea ecx, [ebp - 0x720]
lea edx, [ecx + 2]
nop dword [eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x42b890
sub ecx, edx
sar ecx, 1
push ecx
push 0
lea eax, [ebp - 0x720]
push eax
lea ecx, [ebp - 0x738]
call fcn.00421d30
cmp eax, 0xffffffff
je 0x42b8d6
push 3
push 0
push 0x5a3b90
lea ecx, [ebp - 0x750]
call fcn.00421d30
cmp eax, 0xffffffff
jne 0x42bd31
push 0x400
lea eax, [ebp - 0x518]
push 0
push eax
call fcn.00526ca0
mov eax, dword [0x5b33ac]
add esp, 0xc
movq xmm0, qword [str._p_:31____pgbd1___]
mov dword [ebp - 0x510], eax
xor eax, eax
movq qword [ebp - 0x518], xmm0
nop dword [eax]
xor byte [ebp + eax - 0x518], 0x54
inc eax
cmp eax, 0xc
jb 0x42b910
xor ecx, ecx
mov al, byte [ebp + ecx - 0x518]
lea ecx, [ecx + 1]
mov byte [ebp + ecx - 0x119], al
test al, al
jne 0x42b920
sub esp, 0x18
lea eax, [ebp - 0x118]
mov ecx, esp
push eax
call fcn.00424200
lea ecx, [ebp - 0x76c]
call fcn.0043a6e0
mov ecx, eax
add esp, 0x18
cmp dword [ecx + 0x14], 8
jb 0x42b95e
mov ecx, dword [ecx]
lea edx, [ebp - 0x720]
movzx eax, word [ecx]
lea ecx, [ecx + 2]
mov word [edx], ax
lea edx, [edx + 2]
test ax, ax
jne 0x42b964
mov eax, dword [ebp - 0x758]
cmp eax, 8
jb 0x42b993
inc eax
lea ecx, [ebp - 0x76c]
push eax
push dword [ebp - 0x76c]
call fcn.00424270
cmp word [ebp - 0x720], 0
jne 0x42b9a1
xor ecx, ecx
jmp 0x42b9bf
lea ecx, [ebp - 0x720]
lea edx, [ecx + 2]
nop word [eax + eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x42b9b0
sub ecx, edx
sar ecx, 1
push ecx
push 0
lea eax, [ebp - 0x720]
push eax
lea ecx, [ebp - 0x738]
call fcn.00421d30
cmp eax, 0xffffffff
je 0x42b9f4
push 0
push 0x5a3b98
lea ecx, [ebp - 0x750]
call fcn.004219a0
cmp eax, 0xffffffff
jne 0x42bd31
push 0x400
lea eax, [ebp - 0x518]
push 0
push eax
call fcn.00526ca0
mov ax, word [0x5b33a0]
add esp, 0xc
movq xmm0, qword [str._p_1___]
mov word [ebp - 0x510], ax
mov al, byte [0x5b33a2]
mov byte [ebp - 0x50e], al
xor eax, eax
movq qword [ebp - 0x518], xmm0
xor byte [ebp + eax - 0x518], 0x54
inc eax
cmp eax, 0xb
jb 0x42ba34
xor ecx, ecx
mov al, byte [ebp + ecx - 0x518]
lea ecx, [ecx + 1]
mov byte [ebp + ecx - 0x119], al
test al, al
jne 0x42ba44
sub esp, 0x18
lea eax, [ebp - 0x118]
mov ecx, esp
push eax
call fcn.00424200
lea ecx, [ebp - 0x76c]
call fcn.0043a6e0
mov ecx, eax
add esp, 0x18
cmp dword [ecx + 0x14], 8
jb 0x42ba82
mov ecx, dword [ecx]
lea edx, [ebp - 0x720]
nop dword [eax + eax]
movzx eax, word [ecx]
lea ecx, [ecx + 2]
mov word [edx], ax
lea edx, [edx + 2]
test ax, ax
jne 0x42ba90
mov eax, dword [ebp - 0x758]
cmp eax, 8
jb 0x42babf
inc eax
lea ecx, [ebp - 0x76c]
push eax
push dword [ebp - 0x76c]
call fcn.00424270
cmp word [ebp - 0x720], 0
jne 0x42bacd
xor ecx, ecx
jmp 0x42bae5
lea ecx, [ebp - 0x720]
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x42bad6
sub ecx, edx
sar ecx, 1
push ecx
push 0
lea eax, [ebp - 0x720]
push eax
lea ecx, [ebp - 0x738]
call fcn.00421d30
cmp eax, 0xffffffff
je 0x42bb1a
push 0
push 0x5a3ba0
lea ecx, [ebp - 0x750]
call fcn.004219a0
cmp eax, 0xffffffff
jne 0x42bd31
push 0x400
lea eax, [ebp - 0x518]
push 0
push eax
call fcn.00526ca0
mov ax, word [0x5b3394]
add esp, 0xc
movq xmm0, qword [str._p711___]
mov word [ebp - 0x510], ax
mov al, byte [0x5b3396]
mov byte [ebp - 0x50e], al
xor eax, eax
movq qword [ebp - 0x518], xmm0
nop word [eax + eax]
xor byte [ebp + eax - 0x518], 0x54
inc eax
cmp eax, 0xb
jb 0x42bb60
xor ecx, ecx
mov al, byte [ebp + ecx - 0x518]
lea ecx, [ecx + 1]
mov byte [ebp + ecx - 0x119], al
test al, al
jne 0x42bb70
sub esp, 0x18
lea eax, [ebp - 0x118]
mov ecx, esp
push eax
call fcn.00424200
lea ecx, [ebp - 0x76c]
call fcn.0043a6e0
mov ecx, eax
add esp, 0x18
cmp dword [ecx + 0x14], 8
jb 0x42bbae
mov ecx, dword [ecx]
lea edx, [ebp - 0x720]
movzx eax, word [ecx]
lea ecx, [ecx + 2]
mov word [edx], ax
lea edx, [edx + 2]
test ax, ax
jne 0x42bbb4
lea ecx, [ebp - 0x76c]
call fcn.00424300
push 0
lea eax, [ebp - 0x720]
push eax
lea ecx, [ebp - 0x738]
call fcn.004219a0
cmp eax, 0xffffffff
je 0x42bc04
push 0
push 0x5a3ba8
lea ecx, [ebp - 0x750]
call fcn.004219a0
cmp eax, 0xffffffff
jne 0x42bd31
lea eax, [ebp - 0x118]
mov edx, 0xd
push eax
mov ecx, str._p_11___
call fcn.00426c20
sub esp, 0x14
lea eax, [ebp - 0x118]
mov ecx, esp
push eax
call fcn.00424200
lea ecx, [ebp - 0x76c]
call fcn.0043a6e0
mov ecx, eax
add esp, 0x18
cmp dword [ecx + 0x14], 8
jb 0x42bc43
mov ecx, dword [ecx]
lea edx, [ebp - 0x720]
nop dword [eax]
movzx eax, word [ecx]
lea ecx, [ecx + 2]
mov word [edx], ax
lea edx, [edx + 2]
test ax, ax
jne 0x42bc50
lea ecx, [ebp - 0x76c]
call fcn.00424300
push 0
lea eax, [ebp - 0x720]
push eax
lea ecx, [ebp - 0x738]
call fcn.004219a0
cmp eax, 0xffffffff
je 0x42bca0
push 0
push str.virer
lea ecx, [ebp - 0x750]
call fcn.004219a0
cmp eax, 0xffffffff
jne 0x42bd31
lea eax, [ebp - 0x118]
mov edx, 0xb
push eax
mov ecx, str._p9_1___
call fcn.00426c20
sub esp, 0x14
lea eax, [ebp - 0x118]
mov ecx, esp
push eax
call fcn.00424200
lea ecx, [ebp - 0x76c]
call fcn.0043a6e0
mov ecx, eax
add esp, 0x18
cmp dword [ecx + 0x14], 8
jb 0x42bcdf
mov ecx, dword [ecx]
lea edx, [ebp - 0x720]
movzx eax, word [ecx]
lea ecx, [ecx + 2]
mov word [edx], ax
lea edx, [edx + 2]
test ax, ax
jne 0x42bce5
lea ecx, [ebp - 0x76c]
call fcn.00424300
push 0
lea eax, [ebp - 0x720]
push eax
lea ecx, [ebp - 0x738]
call fcn.004219a0
cmp eax, 0xffffffff
je 0x42bd35
push 0
push 0x5a3bbc
lea ecx, [ebp - 0x750]
call fcn.004219a0
cmp eax, 0xffffffff
je 0x42bd35
mov bl, 1
jmp 0x42bd37
xor bl, bl
mov eax, dword [ebp - 0x73c]
cmp eax, 8
jb 0x42bd55
inc eax
lea ecx, [ebp - 0x750]
push eax
push dword [ebp - 0x750]
call fcn.00424270
xor eax, eax
mov dword [ebp - 0x73c], 7
mov dword [ebp - 0x740], 0
mov word [ebp - 0x750], ax
mov ecx, dword [ebp - 0x724]
cmp ecx, 8
jb 0x42bd90
inc ecx
push ecx
push dword [ebp - 0x738]
lea ecx, [ebp - 0x738]
call fcn.00424270
mov al, bl
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.0052404e
mov esp, ebp
pop ebp
ret