Function at 0x59b3f9
Capabilities:
Encode data using xor

Disassembly:
add esp, 4
add esi, 0x5bf3b7c0
pop ebx
jmp 0x59b7bb
mov edx, dword [esp]
add esp, 4
push esi
push ebx
push esi
jmp 0x59b642
add ebx, 0xe4025361
add edx, ebx
mov ebx, dword [esp]
add esp, 4
push ecx
mov dword [esp], 0x59383a12
mov dword [esp], ebp
jmp 0x59b960
mov esi, ebp
mov ebp, dword [esp]
add esp, 4
jmp 0x59b1af
shr edx, 2
shl edx, 1
xor edx, 0x5e74adce
push edi
mov edi, 0x5df76f47
dec edi
not edi
dec edi
xor edi, 0x765548b1
push ebx
jmp 0x59bcc2
add ebx, 0x73bfcf67
add ebx, 0x6fcbee5d
jmp 0x59b841
xor edi, 0x5fdd9901
shl edi, 1
xor edi, 0x5fe7eb1c
add edi, 0x6033bd1d
sub esi, edi
mov edi, dword [esp]
jmp 0x59b21a
push ebp
mov ebp, 0x7efaf000
jmp 0x59b988
push edx
mov edx, 0x1f356df1
xor eax, edx
pop edx
add eax, 0x25f5cd45
xor eax, 0x5176605
dec eax
neg eax
push edx
mov edx, 0x7fff73af
sub edx, 0xffffffff
sub edx, 0xffffffff
shl edx, 7
jmp 0x59b385
add esp, 4
sub esi, 0xea6d99f4
sub edi, 0x1f9f28e0
sub edi, esi
push edx
mov edx, 0x27f9d59a
push ecx
mov ecx, 0x5cdfedca
add edx, ecx
jmp 0x59bce7
add edx, 0x860027bc
add edi, edx
pop edx
add edi, 4
push edi
push dword [esp + 4]
pop edi
pop dword [esp]
mov esp, dword [esp]
pop edx
xor ebx, 0x7fb98cce
push edx
mov dword [esp], ecx
mov ecx, 0x77ff6c66
push edi
mov edi, 0x39ff6c5b
push eax
mov eax, 0x5fff92d3
add eax, 0x7bbf44a1
shr eax, 5
shr eax, 6
neg eax
not eax
xor eax, 0x7fe59792
and edi, eax
pop eax
and edi, 0x77eebc82
sub edi, 0xc46ed202
xor ecx, edi
mov edi, dword [esp]
add esp, 4
jmp 0x59b42e
push 0x285cde0b
mov dword [esp], edx
push 0x5ff5ca4c
pop edx
jmp 0x59b1df
push ebp
pop ebx
mov ebp, dword [esp]
add esp, 4
pop esi
push ebx
sub dword [esp], 0x5bf3b7c0
mov esi, dword [esp]
jmp 0x59b142
mov edx, esp
jmp 0x59b475
sub edx, ebx
add edx, 0x7ddda20a
jmp 0x59b6d3
push ebp
mov ebp, 0xffffffff
add edx, ebp
pop ebp
jmp 0x59b46f
pop edx
add ebp, 4
xchg dword [esp], ebp
pop esp
xor ebx, dword [esp]
xor dword [esp], ebx
xor ebx, dword [esp]
mov esp, dword [esp]
push edx
push edi
mov dword [esp], eax
jmp 0x59b5de
push ebp
mov ebp, esp
push edx
mov edx, 4
add ebp, edx
jmp 0x59b3a2
push ecx
mov ecx, esp
add ecx, 4
add ecx, 4
xchg dword [esp], ecx
jmp 0x59b683
inc ecx
and ecx, 0x79cf8e37
jmp 0x59b9ff
push edx
jmp 0x59b369
inc edx
jmp 0x59b615
push ebp
mov ebp, 4
sub edx, 0x6b9939e1
add edx, ebp
add edx, 0x6b9939e1
pop ebp
add edx, 4
xchg dword [esp], edx
pop esp
jmp 0x59b672
mov ecx, 0x5a1e3e32
jmp 0x59b66a
add edx, ecx
push dword [esp]
pop ecx
add esp, 4
shr edx, 5
push ebx
push ecx
jmp 0x59b499
push ebx
jmp 0x59bb0d
sub edx, edi
pop edi
xor eax, edx
pop edx
sub esp, 4
mov dword [esp], ebx
mov ebx, 0x7f8f9a96
neg ebx
shr ebx, 2
sub ebx, 0xe53c6b59
dec ebx
shr ebx, 7
shl ebx, 3
xchg ebx, edx
add edx, 0xffffffff
push 0x42ac6437
mov dword [esp], ebx
push edx
mov ebx, dword [esp]
push ecx
mov dword [esp], edi
mov edi, esp
push edx
mov edx, 0x5bfed192
jmp 0x59b94a
xchg dword [esp], edi
pop esp
mov dword [esp], ebp
pop ecx
mov ebp, dword [esp]
add esp, 4
pop edx
jmp 0x59bd0c
pop edx
add dword [esp + 4], 0x1efebe2c
push eax
push esi
mov esi, 0x7bfd5f7a
jmp 0x59b8db
mov dword [esp], ebx
mov ebx, 0x7fe7e217
mov edx, ebx
pop ebx
jmp 0x59b4c0
push ebx
mov ebx, 0x7f53ce6c
inc ebx
add ebx, 0x76cf9f44
jmp 0x59b65f
xor eax, ebx
pop ebx
push edx
push ebx
sub esp, 4
mov dword [esp], ebp
push edx
mov edx, 0x7ffb00a2
mov ebp, edx
jmp 0x59b5c9
mov esi, 0x7aff8024
dec esi
shr esi, 6
jmp 0x59b765
sub edx, 0x7ddda20a
jmp 0x59b378
sub esp, 4
jmp 0x59bb71
sub eax, 0x2e508f4d
sub eax, edx
add eax, 0x2e508f4d
jmp 0x59b151
mov esp, dword [esp]
push ebp
mov dword [esp], eax
push ebx
mov dword [esp], eax
mov dword [esp], esp
push edi
push esi
jmp 0x59b7e7
pop ebp
mov edx, edi
pop edi
sub edx, 0x5d93f901
jmp 0x59b879
mov ebx, dword [esp]
jmp 0x59b462
mov eax, edx
pop edx
dec eax
push edx
mov edx, 0x5ae3a5d1
and eax, edx
pop edx
jmp 0x59b1ea
and eax, 0x7be66e42
inc eax
add eax, 0x24c0bf78
dec eax
push esi
mov esi, 0xa9bafd3f
xor eax, esi
pop esi
xor esi, eax
pop eax
push ebp
push ecx
mov ecx, esi
mov ebp, ecx
jmp 0x59b7a5
push ebx
mov ebx, 0x73bb7179
add ebx, 0x71ffaa3e
xor ebx, 0x37ffe5f3
add ebx, 0xad75db22
add esi, ebx
mov ebx, dword [esp]
add esp, 4
push 0x3dc28066
mov dword [esp], eax
mov eax, 0x373afa8d
jmp 0x59b742
pop ecx
jmp 0x59b333
sub esp, 4
mov dword [esp], edi
push ebp
mov ebp, 0x52e7056f
shl ebp, 3
push ecx
mov ecx, 0xa9ac48df
sub ebp, ecx
pop ecx
mov edi, ebp
jmp 0x59b6c4
mov esi, 0x7f7cda57
xor esi, 0x7f7cda53
mov edi, esi
pop esi
add dword [esp + 4], edi
pop edi
mov eax, dword [esp]
add esp, 4
add eax, 4
push ecx
mov ecx, 4
sub eax, 0x3dffc6ba
sub eax, ecx
add eax, 0x3dffc6ba
mov ecx, dword [esp]
add esp, 4
xchg dword [esp], eax
mov esp, dword [esp]
mov dword [esp], esi
push ebp
jmp 0x59bab9
push esi
mov esi, 0x7bfb9acb
sub ebx, esi
pop esi
sub ebx, esi
add ebx, 0x7bfb9acb
sub ebx, 0x6fcbee5d
sub ebx, 0x73bfcf67
pop esi
cmp ebx, 0xffffa2b4
jne 0x59ba60
sti
jmp 0x59b2ec
add edx, esi
add edx, 0x5d93f901
mov esi, dword [esp]
add esp, 4
push ecx
mov dword [esp], edx
push 0x7ba43d04
mov dword [esp], eax
jmp 0x59b90d
mov ebp, 4
add eax, ebp
pop ebp
add eax, 4
xor eax, dword [esp]
xor dword [esp], eax
xor eax, dword [esp]
mov esp, dword [esp]
jmp 0x59b529
push ebx
push ecx
mov ecx, 0x5a9b5230
mov ebx, ecx
pop ecx
add ebx, 0x7fb7fedb
not ebx
add ebx, 1
inc ebx
jmp 0x59bbda
mov eax, 0x67549a67
push 0x698cb337
mov dword [esp], eax
xor dword [esp], 0x3ef524e3
mov edx, dword [esp]
add esp, 4
xor edx, 0x3ef524e3
jmp 0x59b9e9
pop eax
jmp 0x59ba19
and edx, 0x5b7f9906
neg edx
shr edx, 5
jmp 0x59b9b7
mov ebp, edx
push edi
mov edi, esp
push ecx
jmp 0x59bbbd
xor ebp, 0x70fb66cd
sub ebp, 0xfdd79f12
xor edx, ebp
pop ebp
jmp 0x59b6f2
add edx, 0x74dbccd1
jmp 0x59b241
pop eax
xor edx, 0x5def4895
shr edx, 1
push ebx
mov ebx, 0x6ffff7f6
push edx
jmp 0x59bac9
xor ecx, 0x8edc73df
add ebx, ecx
pop ecx
jmp 0x59b627
sub dword [esp + 4], ebp
add dword [esp + 4], 0x76a7bafa
sub esp, 4
mov dword [esp], ecx
mov ecx, 0x1efebe2c
sub dword [esp + 8], ecx
pop ecx
pop ebp
pop edx
add edx, 0x7ffb00a2
add edx, 0
add edx, edi
mov dword [edx], eax
mov edx, dword [esp]
jmp 0x59b409
not ecx
xor ecx, 0xddfbd774
jmp 0x59b4ad
shl edx, 3
or edx, 0x2fbe331b
and edx, 0x7f73d73b
sub edx, 0xf6384eb
xor edx, 0x5fcff49d
sub ebx, edx
pop edx
sub edx, ebx
pop ebx
push ebx
mov ebx, 0x7bfbc9e1
neg ebx
jmp 0x59bad3
mov ebp, 0x6bf78893
xor ebp, 0x1d8c9265
jmp 0x59bc0d
mov edx, 0x4d369b99
jmp 0x59ba8b
inc ebx
jmp 0x59b15f
mov dword [esp], ecx
mov ecx, 0x5fbf638f
dec ecx
jmp 0x59ba7e
add edi, edx
sub edi, 0x5edb9d00
pop edx
mov esi, dword [esp]
sub esp, 4
mov dword [esp], eax
mov eax, esp
push edi
jmp 0x59bcf9
mov dword [esp], ecx
xor dword [esp], 0x59ff93f4
mov ebx, dword [esp]
add esp, 4
xor ebx, 0x59ff93f4
mov ecx, dword [esp]
add esp, 4
add edx, ebx
push dword [esp]
mov ebx, dword [esp]
add esp, 4
add esp, 4
jmp 0x59bca6
mov ecx, 0x5dfdaad6
inc ecx
add ecx, 0x6dbfe9ef
sub ecx, 0xcbbd94c2
add edi, ecx
pop ecx
sub edi, 4
jmp 0x59b571
shl ebx, 2
push esi
mov esi, 0x77dc592a
xor esi, 0x73bd9d9f
sub esi, 0x7304ad5d
sub ebx, esi
pop esi
sub esi, 0x6fdaa004
sub esi, ebx
add esi, 0x6fdaa004
pop ebx
mov eax, esi
pop esi
sub dword [esp + 8], eax
jmp 0x59b944
and ebp, 0x5d7fbf6c
shr ebp, 1
jmp 0x59bc1b
neg ebp
jmp 0x59bd01
add esi, 0x6fe78a65
shl esi, 6
push edi
mov edi, 0x7fefd644
jmp 0x59b1c0
xor eax, edx
push dword [esp]
pop edx
add esp, 4
push edx
jmp 0x59bcb5
mov edx, 0x7bcf45af
add edx, 1
jmp 0x59b18d
mov dword [esp], 0
sub dword [esp], edi
pop edi
jmp 0x59bcd2
add byte [eax], al
sub esp, 4
mov dword [esp], esi
mov esi, 0x767baf8d
not esi
jmp 0x59bc3b
pop ecx
sub edx, 0x653a9a84
add edi, 0x5edb9d00
jmp 0x59bb33
mov dword [esp], ebp
jmp 0x59b89b
add ebp, 0x2a3d8d36
jmp 0x59b180
sub al, byte [ebx + 0x6fab58bd]
stosd dword es:[edi], eax
outsd dx, dword [esi]
push eax
push cs
stosd dword es:[edi], eax
outsd dx, dword [esi]
mov ecx, 0xb96b47d9
pop eax
stosd dword es:[edi], eax
out 0x95, al
jl 0x59bd19
imul edi, dword [ecx - 0x6a1954a8], 0x7c
clc
out 0xb5, al
jl 0x59bd22
mov ch, 0x7c
std
out 0x95, al
xchg ebp, eax
jl 0x59bd26
test al, 0xbd
jl 0x59bd10
xchg ebp, edx
and byte [edx], ah
jae 0x59bcd0
jecxz 0x59bd8d
sbb byte [esi + 0x24], dl
and dh, byte [edx - 0x44a1261e]
jne 0x59bd8a
loop 0x59bd15
pop esi
mov ebx, 0xe6b14a75
mov cl, 0xe6
push eax
add eax, 0x7c95eefa
sbb esi, ebp
xor dword [edi], 0xfffffff6
out dx, al
jl 0x59bd3a
sub dl, byte [ebp - 0x2a]
add ebp, edi
rcl esi, 1
sbb al, 0x56
xor dword [eax], edi
scasb al, byte es:[edi]
xor ah, byte [esi]
out 0x73, eax
sub al, byte [esi + 0x147cf30b]
mov eax, 0xb85542a9
pop eax
stosd dword es:[edi], eax
out 0xb5, al
jl 0x59bdb3
int 0xb8
pop eax
stosd dword es:[edi], eax
out 0x5c, al
mov cl, 0xfc
outsd dx, dword [esi]
mov ecx, 0x55ecf258
pop esp
and ah, byte [ebx - 0x63]
mov cl, 0x10
outsd dx, dword [esi]
mov ecx, 0x9d532058
popfd
or byte [edx + 0x34], al
mov ecx, 0xa5e6ab58
xor al, 0xb9
pop eax
stosd dword es:[edi], eax
out 0xa5, al
jl 0x59bde9
pop ebx
popfd
cmpsd dword [esi], dword es:[edi]
lahf
dec ebx
loop 0x59bda5
and cl, byte [esi + 0x6faf9938]
mov ecx, 0xbdae2a58
pop eax
stosd dword es:[edi], eax
outsd dx, dword [esi]
push eax
scasb al, byte es:[edi]
mov ebp, 0x506fab58
push esp
test eax, 0x240cb96f
imul ebx, dword [ebp - 0x42b45027], 0x58
stosd dword es:[edi], eax
fldcw word [edi - 0x54a742b5]
outsd dx, dword [esi]
loopne 0x59bd97
inc edi
imul esi, dword [eax], 0x5c
invalid
outsd dx, dword [esi]
mov ecx, 0xbc8f2258
pop esp
stosd dword es:[edi], eax
outsd dx, dword [esi]
mov ecx, 0xab0140f
mov dword [0x8356eeb1], eax
sbb byte [ebx - 0x46902b4f], dl
pop eax
sub al, 0x43
popfd
add al, 0xfb
xlatb
mov ebp, 0xb86fab58
lahf
call 0x8513a9b
clc
mov byte [ebx + ebp], bh
xor byte [edi + ecx*4 - 0x7a], dl
neg dword [eax - 0x55]
outsd dx, dword [esi]
out 0xdf, al
scasd eax, dword es:[edi]
dec ebx
in eax, 0xd9
inc edi
imul edi, dword [ecx - 0x5a1954a8], 0x7c
adc byte [ebx - 0x47], ch
pop eax
stosd dword es:[edi], eax
outsb dx, byte [esi]
sal word [edi - 0x782e14b5], cl
dec ebx
push eax
push 0x54
nop
inc esi
fld dword [edi + 0x58b1d54b]
adc dh, byte [edx]
dec esp
invalid