Function at 0x59a6ce
Capabilities:
Encode data using xor

Disassembly:
push edx
jmp 0x59a4a8
add esp, 4
sub ebx, 4
jmp 0x59a461
xor dword [esp + 4], edx
mov edx, dword [esp]
add esp, 4
dec dword [esp]
not dword [esp]
inc dword [esp]
sub dword [esp], 0x6d1f551d
mov dword [esp], eax
lea eax, [ebp + 0x12460208]
push edi
jmp 0x59a447
push esp
pop edi
push edx
mov edx, 4
add edi, edx
pop edx
push eax
push edi
mov edi, 0x57e72023
push edi
pop eax
pop edi
jmp 0x59b216
xor ebx, dword [esp]
jmp 0x59a51d
push edi
push eax
push ebx
mov ebx, 0x7cbe3c2c
mov eax, 0xbaadb32c
sub eax, ebx
pop ebx
mov edi, eax
mov eax, dword [esp]
add esp, 4
push edi
mov edi, 0xbdef3fa1
jmp 0x59addf
mov esi, 0x2ffb8c60
dec esi
not esi
inc esi
sub esp, 4
mov dword [esp], eax
mov eax, 0x66e7e7db
and eax, 0x3ff80a6c
and eax, 0x3dee6b45
add eax, 0x761b4db0
jmp 0x59b7ba
xor dword [esp], ebx
jmp 0x59b5d7
inc ebx
sub ebx, 0x2c846c40
xor dword [esp + 4], ebx
jmp 0x59bf21
xchg dword [esp], esi
pop esp
mov dword [esp + 4], ecx
pop ecx
push eax
mov eax, 0x4dfa28f0
sub dword [esp + 4], 0x75ffbc5c
jmp 0x59ae41
push eax
mov eax, 0x7dfaa100
push edx
mov edx, 0xffffffff
sub eax, 0x7d46cc10
jmp 0x59a81e
xchg dword [esp], ecx
pop esp
sub edx, ecx
pop ecx
xchg dword [esp], edx
mov esp, dword [esp]
mov dword [esp], edi
mov dword [esp], eax
lea eax, [ebp + 0x124601f8]
push eax
push ecx
sub esp, 4
jmp 0x59c256
pop ebp
push ebx
mov ebx, esp
add ebx, 4
add ebx, 4
push ebx
push dword [esp + 4]
mov ebx, dword [esp]
push ebp
mov ebp, esp
add ebp, 4
push ecx
jmp 0x59adba
add dword [esp], 4
pop eax
jmp 0x59b1a8
mov edi, 0x3ffb9f1b
neg edi
shl edi, 4
sub edi, 0xa096d050
add esi, edi
pop edi
pop ebp
pop eax
jmp 0x59ac59
mov dword [esp], eax
jmp 0x59bb5a
sub eax, 0x77decdeb
sub eax, edx
add eax, 0x77decdeb
add eax, 0x7d46cc10
pop edx
add eax, 0xf2e464b0
mov ecx, eax
jmp 0x59a97d
mov esi, 0x452b5af7
mov edx, 0xd52ac974
push eax
mov eax, 0x5c8ba1a2
sub edx, eax
pop eax
jmp 0x59b9a3
pop ecx
jmp 0x59ae0e
pop ecx
pop eax
mov dword [esp + 4], ecx
push dword [esp]
mov ecx, dword [esp]
add esp, 4
add esp, 4
mov dword [esp], eax
lea eax, [ebp + 0x12460204]
push ebp
mov dword [esp], ebx
mov dword [esp], 0x5af53155
sub dword [esp], 0x512a56b9
and dword [esp], 0x3fa57125
xor dword [esp], 0x76d23a71
shl dword [esp], 8
jmp 0x59a936
inc ecx
inc ecx
inc ecx
sub ecx, 0x38e432bb
mov eax, ecx
pop ecx
push ebx
jmp 0x59beb7
push edx
mov edx, 0x6ce76f00
jmp 0x59b2db
dec dword [esp]
shl dword [esp], 3
inc dword [esp]
xor dword [esp], 0x8d620e8e
shr dword [esp], 6
sub dword [esp], 0xfd5099b
push 0x6a5a1be1
jmp 0x59b719
mov ebx, 0x5bfe0522
jmp 0x59c6ec
pop eax
jmp 0x59a9ea
mov dword [esp + 4], ecx
pop ecx
dec dword [esp]
jmp 0x59aa3a
add esi, ebp
push edi
jmp 0x59a767
sub dword [esp], 0x342f40bd
mov dword [esp], edi
sub esp, 4
mov dword [esp], eax
mov eax, 0x5f9fef52
shl eax, 5
shr eax, 5
not eax
xor eax, 0x939a9514
mov dword [esp + 4], eax
pop eax
sub dword [esp], 0x7d794a85
and dword [esp], 0x7f5d5ed0
jmp 0x59ac15
sub dword [esp + 4], 0x5eac75a0
add dword [esp + 4], 0x75ffbc5c
pop eax
mov dword [esp], eax
push 0
push 0
lea eax, [ebp + 0x124503d2]
push ecx
mov ecx, esp
push ebp
mov ebp, 0x77fd351f
shr ebp, 1
jmp 0x59ab61
dec edx
push edx
push dword [esp + 4]
pop edx
jmp 0x59b2e8
xor ebp, 0x39fafc86
not ebp
push edx
mov edx, 0xfdfb99f2
xor ebp, edx
pop edx
add ecx, ebp
pop ebp
push 0x425f8c18
mov dword [esp], ebx
mov ebx, 0x69ebec96
shr ebx, 3
jmp 0x59b620
add dword [esp], 0xffffffff
neg dword [esp]
add dword [esp], 0xdd4866e5
add dword [esp], 0xadc3e2cb
mov dword [esp], edi
jmp 0x59b2a7
xor edi, 0x7e83871d
xor esi, edi
pop edi
jmp 0x59b7a8
pop ebx
push ecx
push dword [esp + 4]
jmp 0x59b62d
push ecx
mov ecx, 0x7fbf5b16
and dword [esp + 4], ecx
pop ecx
jmp 0x59abb1
push esi
push dword [esp + 4]
jmp 0x59b33c
mov ebx, 4
sub ebp, ebx
push dword [esp]
mov ebx, dword [esp]
push ecx
mov ecx, esp
add ecx, 4
jmp 0x59bff7
mov dword [esp], ecx
push 0xef58566
jmp 0x59a88b
pop ecx
add dword [esp], 0x14737cb0
mov dword [esp], eax
push dword [ebp + 0x124503ec]
call dword [ebp + 0x122d2342]
lea eax, [ebp + 0x124601e8]
sub esp, 4
mov dword [esp], edx
jmp 0x59be19
xor edx, ebp
xchg dword [esp], edx
not dword [esp]
inc dword [esp]
push eax
mov dword [esp], 0x4ff26f61
mov dword [esp], esi
mov esi, 0x29bf23e1
add dword [esp + 4], 0x73fd05cd
sub dword [esp + 4], esi
sub dword [esp + 4], 0x73fd05cd
pop esi
push edx
jmp 0x59bfb9
mov ecx, 4
add ebp, ecx
pop ecx
push ebp
push dword [esp + 4]
pop ebp
pop dword [esp]
pop esp
jmp 0x59ae4e
mov edx, edi
pop edi
sub edx, 0x7f7ebfa2
sub edx, edi
add edx, 0x7f7ebfa2
mov edi, dword [esp]
jmp 0x59b11a
add ecx, 0x66fd701f
jmp 0x59a924
add dword [esp + 4], 0x5eac75a0
jmp 0x59b6ea
pop dword [esp]
pop esp
mov dword [esp], eax
push 0
push 0
jmp 0x59b7ee
lea eax, [ebp + 0x12460200]
push edx
push 0x598e5ef6
mov dword [esp], ecx
jmp 0x59a656
push 0x6b56a2f2
mov dword [esp], eax
push 0x7fb81f25
push dword [esp]
mov eax, dword [esp]
jmp 0x59b492
add ecx, 4
push esi
mov esi, 0x7ff468c7
sub esi, 0x4fef86ee
dec esi
xor esi, 0x3fbbb7c7
sub esi, 1
dec esi
xor esi, 0xfbf5619
add ecx, esi
pop esi
xchg dword [esp], ecx
pop esp
sub eax, 0x76ad6e00
push ecx
mov dword [esp], eax
jmp 0x59a8c9
add ebx, 4
add ebx, 4
xchg dword [esp], ebx
mov esp, dword [esp]
push ebp
jmp 0x59baa0
pop ecx
jmp 0x59ba26
add esp, 4
jmp 0x59a3f9
pop eax
sub edx, 0x6f3693fe
push ebx
mov ebx, 0x1ff5ea91
shl ebx, 6
push eax
jmp 0x59b46a
push eax
mov eax, esp
add eax, 4
sub eax, 4
xchg dword [esp], eax
mov esp, dword [esp]
jmp 0x59a816
dec eax
shl eax, 8
add eax, 0x18dfde04
sub edi, eax
pop eax
xchg dword [esp], edi
pop esp
mov dword [esp], edi
push ebp
jmp 0x59b98b
mov eax, 4
add dword [esp + 4], eax
pop eax
mov ebp, dword [esp]
add esp, 4
add ebp, 4
push 0x5faa757b
jmp 0x59b510
mov dword [esp], eax
push 0
push 0
lea eax, [ebp + 0x124503c3]
push edx
mov edx, esp
add edx, 4
sub edx, 4
xchg dword [esp], edx
mov esp, dword [esp]
mov dword [esp], ebp
push 0x5b85fc55
push esp
pop dword [esp]
push eax
jmp 0x59b23e
push eax
mov eax, 0x3fdfe6fc
sub edx, eax
jmp 0x59b159
pop dword [esp]
add dword [esp], 0x77df71c8
shl dword [esp], 1
add dword [esp], 0x57c2b911
dec dword [esp]
add dword [esp], 0xea888528
jmp 0x59bf33
pop esi
jmp 0x59b83f
not dword [esp]
pop esi
sub esi, 0x7fefaa0c
push edi
mov edi, 0x7e7b8c1a
neg edi
sub edi, 0x5f7f425c
dec edi
jmp 0x59abe8
mov esi, dword [esp]
add esp, 4
mov eax, ebx
pop ebx
push eax
jmp 0x59c51f
mov eax, 0x25ff4ede
xor ebx, eax
pop eax
inc ebx
xor ebx, 0x629b846a
add edx, ebx
pop ebx
and dword [esp + 4], edx
push dword [esp]
pop edx
add esp, 4
xchg dword [esp], esi
jmp 0x59b9db
add esp, 4
push ecx
mov ecx, esp
jmp 0x59afa5
mov ebx, esp
push esi
mov esi, 0x78ff11b1
inc esi
inc esi
xor esi, 0x5b768ed0
push esi
jmp 0x59b353
mov dword [esp], edi
mov edi, 4
sub ebp, edi
push dword [esp]
pop edi
add esp, 4
push ebp
mov dword [esp], ebx
mov dword [esp], ebp
push dword [esp + 4]
mov ebp, dword [esp]
add esp, 4
pop dword [esp]
mov esp, dword [esp]
mov dword [esp], ebx
mov dword [esp], eax
push dword [ebp + 0x124503ec]
call dword [ebp + 0x122d2342]
lea eax, [ebp + 0x124601e8]
push 0x40223d93
mov dword [esp], edx
push esp
mov edx, dword [esp]
add esp, 4
push ebp
mov dword [esp], ecx
mov ecx, 4
push eax
mov eax, 0x73ff35d5
add eax, 1
add eax, 0xcb6b8e2a
sub edx, 0x37edf9f5
sub edx, eax
add edx, 0x37edf9f5
pop eax
add edx, ecx
push edi
push 0x3f6ac400
pop edi
add edx, edi
pop edi
jmp 0x59b070
xor ebx, dword [esp]
pop esp
mov dword [esp], esi
mov dword [esp], eax
push dword [ebp + 0x124503ec]
call dword [ebp + 0x122d2342]
push dword [ebp + 0x124503ec]
call dword [ebp + 0x122d1e58]
jmp 0x59b8e3
xor ebx, 0xd3d7d96
sub ecx, ebx
jmp 0x59ac0a
pop ecx
pop dword [esp]
pop esp
mov dword [esp], ebx
jmp 0x59b4b5
mov dword [esp + 4], ebp
push dword [esp]
jmp 0x59a6b6
sub dword [esp + 4], eax
jmp 0x59aa74
mov dword [esp], eax
lea eax, [ebp + 0x124601f4]
push ecx
push esp
push dword [esp]
pop ecx
add esp, 4
push eax
jmp 0x59bd2d
mov dword [esp], edx
push ebp
mov dword [esp], esi
jmp 0x59a84d
push eax
mov eax, 0x7ffd4fe4
sub eax, 0x68862627
add ebx, eax
jmp 0x59b7dd
and eax, 0x2ffaf7ee
add eax, 0x4d045447
xor esi, eax
pop eax
not esi
inc esi
add esi, 0x87faef8a
add edx, esi
pop esi
push 0x15ffc818
jmp 0x59bdaa
pop eax
add ebx, esi
sub ebx, 0x177729bd
push dword [esp]
jmp 0x59b8c4
lea eax, [ebp + 0x124503df]
sub esp, 4
mov dword [esp], edi
mov dword [esp], 0x7dbf6f8c
shr dword [esp], 1
jmp 0x59a941
pop dword [esp]
pop esp
mov dword [esp], ebx
mov dword [esp], eax
jmp 0x59ae82
pop esi
jmp 0x59a3b7
cmp dword [ebp + 0x122d2ba4], 0
jne 0x59b8fd
cmp dword [ebp + 0x122d2c34], 0
je 0x59b31a
push dword [ebp + 0x12460218]
push dword [ebp + 0x12460214]
push dword [ebp + 0x12460210]
push dword [ebp + 0x1246020c]
push dword [ebp + 0x12460208]
push dword [ebp + 0x12460204]
push dword [ebp + 0x124601f8]
push dword [ebp + 0x124601f4]
push dword [ebp + 0x12460200]
push dword [ebp + 0x124601fc]
push dword [ebp + 0x124601f0]
push dword [ebp + 0x124601ec]
lea eax, [ebp + 0x12460232]
push 0x717b9573
mov dword [esp], edx
mov edx, esp
add edx, 4
sub edx, 4
xchg dword [esp], edx
jmp 0x59b060
push eax
mov eax, 0x73be4076
add eax, 0xffffffff
add eax, 0xf8163116
mov ebp, eax
pop eax
jmp 0x59b6c1
sub edx, esi
add edx, 0x5c8ba1a2
pop esi
xor dword [esp + 4], edx
pop edx
and dword [esp], 0x3b8b596a
jmp 0x59ba59
not esi
xchg dword [esp], esi
push ebp
mov dword [esp], esi
jmp 0x59be24
push 0x13ddefd4
mov dword [esp], esi
mov esi, 4
sub edx, 0x7fa10988
sub edx, esi
add edx, 0x7fa10988
push dword [esp]
pop esi
add esp, 4
xor edx, dword [esp]
xor dword [esp], edx
xor edx, dword [esp]
jmp 0x59bc95
push eax
push 0x71c3e2c1
mov dword [esp], esi
mov dword [esp], 0x3fff0e89
and dword [esp], 0x6fb0ca56
push eax
mov eax, 0x5d6df842
sub dword [esp + 4], eax
pop eax
add dword [esp], 0xac7326b2
pop eax
add dword [esp + 4], eax
jmp 0x59becb
push eax
pop ebp
mov ecx, ebp
pop ebp
mov eax, dword [esp]
push esi
mov esi, esp
add esi, 4
jmp 0x59c609
pop ebx
add ecx, eax
mov eax, dword [esp]
add esp, 4
jmp 0x59beed
mov ebp, 0x59ee1602
push 0x3abc66b3
jmp 0x59c02e
mov dword [esp], 0x77ffa03f
or dword [esp], 0x67fed0ba
or dword [esp], 0x777b21fb
add dword [esp], 0x7eff0ed5
jmp 0x59c310
pop esp
mov dword [esp], ebp
jmp 0x59b6f3
sub esp, 4
jmp 0x59ad0a
mov dword [esp], ecx
push edx
mov edx, 4
mov ecx, edx
mov edx, dword [esp]
push ecx
mov ecx, esp
add ecx, 4
add ecx, 4
jmp 0x59a66c
sub esp, 4
jmp 0x59c4e8
mov esi, 0x34d92b79
jmp 0x59c3d3
mov ebx, 0x3d0ec2c9
xor eax, ebx
jmp 0x59bab6
mov eax, dword [esp]
push eax
mov eax, esp
add eax, 4
add eax, 4
jmp 0x59c063
sub ecx, 4
xchg dword [esp], ecx
mov esp, dword [esp]
mov dword [esp], edx
mov dword [esp], esi
mov dword [esp], 0x7bfe3f96
xchg dword [esp], edx
jmp 0x59ab01
mov ebx, dword [esp]
add esp, 4
shr dword [esp], 1
jmp 0x59a3a6
mov dword [esp], eax
push 0
push 0
lea eax, [ebp + 0x124503cb]
push esi
mov dword [esp], ecx
mov dword [esp], 0x6be2fda2
add dword [esp], 0xf1bcdb2e
add dword [esp], 0xffffffff
xchg dword [esp], edx
xchg edx, ebp
not ebp
xor edx, ebp
xor ebp, edx
jmp 0x59ad84
mov edx, 0x2ffbdbd3
and dword [esp + 4], edx
pop edx
push ecx
push 0x7532512f
push dword [esp]
pop ecx
add esp, 4
xor dword [esp + 4], ecx
jmp 0x59ad59
fld qword [ecx]
fstp qword [ebx + 0x53]
jmp 0x59acef
add ecx, 4
xchg dword [esp], ecx
pop esp
add esp, 4
push ebp
push dword [esp + 4]
mov ebp, dword [esp]
add esp, 4
jmp 0x59c1ea
mov dword [esp], edi
push ebp
xor dword [esp], 0x39a62121
pop edi
xor edi, 0x39a62121
mov eax, edi
pop edi
mov ebp, dword [esp]
jmp 0x59c145
xchg dword [esp], eax
pop esp
shr dword [esp], 8
add dword [esp], 0x759f03a0
mov dword [esp], eax
jmp 0x59c29b
push ebx
mov ebx, esp
jmp 0x59affd
and eax, 0x5f793c8d
dec eax
xor eax, 0x2eb76d11
add esi, 0x25fff7dc
sub esi, eax
jmp 0x59c553
pop dword [esp]
mov esp, dword [esp]
mov dword [esp], eax
push dword [ebp + 0x124503ec]
call dword [ebp + 0x122d2342]
lea eax, [ebp + 0x124601e8]
push edi
mov edi, esp
add edi, 4
sub edi, 4
jmp 0x59c25e
mov dword [esp], eax
jmp 0x59c500
xchg dword [esp], edi
pop esp
mov dword [esp], ecx
mov dword [esp], eax
push ecx
jmp 0x59ae96
push dword [ebp + 0x124503ec]
call dword [ebp + 0x122d2342]
lea eax, [ebp + 0x124601e8]
push esi
mov esi, esp
push ebx
mov ebx, 0x34affb32
and ebx, 0x177f4305
add ebx, 0x6fac8f57
xor ebx, 0x83dbd253
add esi, ebx
pop ebx
push eax
push ebx
push esi
mov esi, 0x7fbf3d81
mov ebx, 0x7fbf3d85
sub ebx, esi
jmp 0x59b3ce
inc dword [esp]
xor dword [esp], 0xfb37d4d5
mov dword [esp], ebx
push esi
mov esi, 0x5b357ce5
push edx
mov edx, 0x4cbc6e1f
add esi, edx
pop edx
add esi, 0xffffffff
dec esi
add esi, 0x76ee7756
jmp 0x59c506
and dword [esp + 4], esi
push dword [esp]
push dword [esp]
pop esi
add esp, 4
add esp, 4
sub dword [esp], 0xce0ad06a
mov dword [esp], ebx
mov dword [esp], eax
push 0
jmp 0x59c442
push 0
lea eax, [ebp + 0x124503da]
push 0x1a30a55e
mov dword [esp], eax
push ebp
mov dword [esp], 0x59fb4058
mov dword [esp], ebp
push esp
pop dword [esp]
jmp 0x59a74f
mov dword [esp], esp
add dword [esp], 4
pop edx
push 0x26b392be
mov dword [esp], edi
mov dword [esp], esi
jmp 0x59a4f5
push ebp
jmp 0x59bac7
xor esi, 0xf7b13f3
add esi, 0xee648e59
mov ebx, esi
pop esi
add eax, ebx
mov ebx, dword [esp]
jmp 0x59c614
mov eax, 0x1faf5121
jmp 0x59c14d
sub esi, 0x25fff7dc
mov eax, dword [esp]
add esp, 4
add esi, 0x7fe0280c
sub esi, eax
sub esi, 0x7fe0280c
push 0xa2090ec
mov dword [esp], ebp
mov ebp, 0x5b56a901
inc ebp
shr ebp, 7
dec ebp
push ebx
mov ebx, 0x5b7aa907
xor ebp, ebx
jmp 0x59c58f
pop ebx
jmp 0x59c5c3
sub ebp, 0xffffffff
xor ebp, 0x6a527946
jmp 0x59c5fe
sub esi, 0x5faf3e00
jmp 0x59aa0d
add esi, 4
jmp 0x59a61d
add esp, 4
sub eax, 4
xchg dword [esp], eax
jmp 0x59c657
mov esp, dword [esp]
mov dword [esp], eax
push dword [ebp + 0x124503ec]
call dword [ebp + 0x122d2342]
lea eax, [ebp + 0x124601e8]
push esi
jmp 0x59c6be
mov esi, esp
add esi, 4
sub esi, 4
xchg dword [esp], esi
pop esp
mov dword [esp], esi
mov dword [esp], 0x6d7d9df5
jmp 0x59c6e6
push ebx
jmp 0x59a973
dec ebx
shr ebx, 8
push edi
mov edi, 0x6b9f94a3
jmp 0x59c6fb
xor edi, 0x10b0edb2
or ebx, edi
pop edi
jmp 0x59c72a
not ebx
jmp 0x59a5f3