Function at 0x100a0be0
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0xa0
mov dword [ebp - 0x3c], ecx
mov eax, dword [ebp + 8]
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x34], eax
mov eax, dword [ebp + 0x24]
mov dword [ebp - 0x30], eax
mov eax, dword [ebp + 0x20]
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp + 0x1c]
mov dword [ebp - 0x28], eax
lea eax, [ebp + 0x14]
mov dword [ebp - 0x24], eax
lea eax, [ebp + 0xc]
mov dword [ebp - 0x20], eax
mov eax, esp
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x10], 0xffffffff
lea eax, [ebp - 0x18]
mov dword [ebp - 0x14], 0x100b0790
mov ecx, dword fs:[0]
mov dword [ebp - 0x18], ecx
mov dword fs:[0], eax
mov ecx, dword [0x10288ac0]
mov edx, dword [0x10288ac4]
mov eax, ecx
xor eax, 0xffffffff
mov esi, edx
xor esi, 0xffffffff
and eax, esi
or ecx, edx
xor ecx, 0xffffffff
or eax, ecx
xor eax, 0xffffffff
mov ecx, eax
and ecx, 0xfb23d3c6
or eax, 0xfb23d3c6
add ecx, eax
mov eax, ecx
xor eax, 0xffffffff
xor ecx, 0xffffffff
or eax, ecx
xor eax, 0xffffffff
or eax, 0x9073472f
mov edx, eax
xor edx, 0xffffffff
and edx, 0x266b68e7
mov ecx, eax
and ecx, 0xd9949718
imul ecx, edx
mov edx, eax
and edx, 0x266b68e7
or eax, 0x266b68e7
imul eax, edx
add eax, ecx
cmp eax, 0xdba9cd51
ja 0x100a1851
mov esi, dword [ebp - 0x3c]
mov ebx, dword [ebp - 0x28]
mov eax, dword [0x10288ac8]
mov ecx, dword [0x10288acc]
not eax
not ecx
or eax, ecx
not eax
add eax, 0x4aa067e7
or eax, 0x3b035c7e
add eax, 0x208e42c1
mov dword [ebp - 0x44], eax
push eax
mov eax, esp
push eax
mov ecx, esp
mov dword [ebp - 0x50], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x4c], ecx
push eax
mov edi, esp
mov dword [ebp - 0x48], edi
push eax
mov edx, esp
push eax
mov ecx, esp
mov dword [ebp - 0x7c], ecx
sub esp, 8
mov ecx, esp
mov dword [ebp - 0x78], ecx
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x74], ecx
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x70], ecx
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x6c], ecx
sub esp, 0x20
mov ecx, esp
mov dword [ebp - 0x68], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x64], ecx
sub esp, 8
mov ecx, esp
mov dword [ebp - 0x60], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x5c], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x58], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x54], ecx
mov ecx, dword [ebp - 0x38]
mov dword [eax], ecx
mov ecx, dword [ebp - 0x30]
mov eax, dword [ebp - 0x50]
mov dword [eax], ecx
mov ecx, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x4c]
mov dword [eax], ecx
mov ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x24]
mov dword [edi], ebx
mov dword [edx], esi
sub esp, 8
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.100a1b70
mov eax, dword [ebp - 0x48]
add esp, 8
mov ecx, dword [eax]
call fcn.1004a3a0
mov ecx, eax
mov eax, dword [ebp - 0x44]
mov edx, ecx
add edx, 1
xor ecx, 0xffffffff
or ecx, 0x4000
add ecx, edx
cmp ecx, 0
setne cl
mov byte [ebp - 0x3d], cl
cmp eax, 0x22e3826b
jb 0x100a0cb2
mov al, byte [ebp - 0x3d]
test al, 1
jne 0x100a0db7
jmp 0x100a125c
mov edx, dword [ebp - 0x78]
mov eax, dword [ebp - 0x48]
mov ecx, dword [eax]
sub esp, 4
mov eax, esp
mov dword [eax], edx
call fcn.1003e3f0
mov ecx, dword [ebp - 0x78]
mov dword [ebp - 0x10], 0
sub esp, 4
mov eax, esp
mov dword [eax], ecx
call fcn.10084890
add esp, 4
mov dword [ebp - 0x80], eax
jmp 0x100a0dec
mov eax, dword [0x10288ad0]
or eax, dword [0x10288ad4]
or eax, 0x6405cc7b
mov ecx, eax
and ecx, 0x5055601
xor ecx, 0xffffffff
add eax, 0x5055601
add eax, 1
add eax, ecx
mov ecx, eax
add ecx, 1
xor eax, 0xffffffff
or eax, 0xb73236db
add eax, ecx
cmp eax, 0x3e80f587
jbe 0x100a18af
mov ecx, dword [ebp - 0x78]
call fcn.10027aa0
mov edx, dword [ebp - 0x80]
mov ecx, dword [ebp - 0x74]
mov eax, dword [ebp - 0x7c]
mov dword [eax], edx
mov dword [ebp - 0x10], 0xffffffff
sub esp, 8
mov eax, esp
mov dword [eax + 4], 0
mov dword [eax], 1
call fcn.10084280
mov edx, dword [ebp - 0x70]
mov eax, dword [ebp - 0x7c]
mov ecx, dword [eax]
mov dword [ebp - 0x10], 1
sub esp, 4
mov eax, esp
mov dword [eax], edx
call fcn.100911d0
jmp 0x100a0e7c
mov eax, dword [0x10288ae8]
mov esi, dword [0x10288aec]
mov ecx, eax
xor ecx, 0xffffffff
mov edx, esi
and edx, ecx
mov edi, esi
xor edi, 0xffffffff
mov ecx, eax
and ecx, edi
imul ecx, edx
mov edx, eax
and edx, esi
or eax, esi
imul eax, edx
add eax, ecx
sub eax, 0x153f9005
mov ecx, eax
and ecx, 0xd891eeb8
shl ecx, 1
add eax, 0xd891eeb8
sub eax, ecx
add eax, 0xc64c6b0d
cmp eax, 0x76836507
je 0x100a0e7c
mov ecx, dword [ebp - 0x74]
mov edx, dword [ebp - 0x70]
mov dword [ebp - 0x10], 3
sub esp, 4
mov eax, esp
mov dword [eax], edx
call fcn.100aed70
jmp 0x100a0eeb
mov eax, dword [0x10288af0]
mov ecx, dword [0x10288af4]
xor eax, 0xffffffff
xor ecx, 0xffffffff
or eax, ecx
xor eax, 0xffffffff
mov ecx, eax
and ecx, 0x7b3bd827
shl ecx, 1
add eax, 0x7b3bd827
sub eax, ecx
xor eax, 0xffffffff
or eax, 0xc65da952
xor eax, 0xffffffff
imul eax, eax, 0xe1ab5560
cmp eax, 0x5c8e13fd
jbe 0x100a18e7
mov ecx, dword [ebp - 0x70]
mov eax, dword [0x10288af8]
mov esi, dword [0x10288afc]
mov edx, eax
xor edx, esi
xor esi, 0xffffffff
and eax, esi
shl eax, 1
sub eax, edx
and eax, 0xd3efbd9a
xor eax, 0x62faae
sub eax, 0xf9594177
mov dword [ebp - 0x84], eax
call fcn.100061b0
mov eax, dword [ebp - 0x84]
cmp eax, 0xad32673b
jae 0x100a0f2e
mov ecx, dword [ebp - 0x74]
mov dword [ebp - 0x10], 1
sub esp, 4
mov eax, esp
mov dword [eax], 0
call fcn.1004bb20
jmp 0x100a0f93
mov eax, dword [0x10288b00]
mov edx, dword [str.A_D_]
mov ecx, eax
and ecx, edx
shl ecx, 1
add eax, edx
sub eax, ecx
mov ecx, 0xe78320f4
xor edx, edx
div ecx
xor ecx, ecx
sub ecx, eax
add ecx, 0x3bb1a55c
xor eax, eax
sub eax, ecx
imul eax, eax, 0xf0d4328d
cmp eax, 0x269b7d83
jbe 0x100a18f4
mov ecx, dword [ebp - 0x7c]
mov eax, dword [0x10288b08]
xor edx, edx
div dword [0x10288b0c]
mov edx, eax
and edx, 0x76ed5eb9
mov esi, eax
xor esi, 0x8912a146
add eax, esi
sub eax, edx
or eax, 0x92cdf835
imul eax, eax, 0xcebe1d2
mov ecx, dword [ecx]
mov dword [ebp - 0x88], ecx
cmp eax, 0xd9c24480
ja 0x100a18f4
mov ecx, dword [ebp - 0x88]
mov edx, dword [ebp - 0x6c]
mov dword [ebp - 0x10], 1
sub esp, 4
mov eax, esp
mov dword [eax], edx
call fcn.10091020
jmp 0x100a1033
mov ecx, dword [ebp - 0x74]
mov edx, dword [ebp - 0x6c]
mov dword [ebp - 0x10], 2
sub esp, 4
mov eax, esp
mov dword [eax], edx
call fcn.100aed70
jmp 0x100a1051
mov ecx, dword [ebp - 0x6c]
mov eax, dword [0x10288b28]
add eax, dword [0x10288b2c]
mov edx, eax
add edx, 1
xor eax, 0xffffffff
or eax, 0x25a077d7
add eax, edx
sub eax, 0x193a987e
mov edx, eax
xor edx, 0x385022a3
xor edx, 0xffffffff
or eax, 0x385022a3
and eax, edx
mov dword [ebp - 0x90], eax
call fcn.100061b0
mov ecx, dword [ebp - 0x74]
call fcn.10008340
mov ecx, eax
mov eax, dword [ebp - 0x90]
mov dword [ebp - 0x8c], ecx
cmp eax, 0xa76490ff
je 0x100a18f9
mov ecx, dword [ebp - 0x20]
mov edx, dword [ebp - 0x24]
mov esi, dword [ebp - 0x8c]
mov dword [ebp - 0x10], 1
sub esp, 0x14
mov eax, esp
mov dword [eax + 0xc], esi
mov dword [eax + 4], edx
mov dword [eax], ecx
mov dword [eax + 0x10], 1
mov dword [eax + 8], 2
call fcn.100aeec0
add esp, 0x14
mov dword [ebp - 0x94], eax
jmp 0x100a10f2
mov eax, dword [0x10288b30]
mov edx, dword [0x10288b34]
mov ecx, eax
and ecx, edx
shl ecx, 1
xor eax, edx
add eax, ecx
or eax, 0xed15338d
sub eax, 0xc8ab2c14
xor eax, 0x22d05b4c
cmp eax, 0x6510abde
ja 0x100a190e
mov eax, dword [ebp - 0x94]
cmp eax, 1
jl 0x100a1144
mov eax, dword [ebp - 0x94]
cmp eax, 1
je 0x100a1165
jmp 0x100a1172
mov eax, dword [ebp - 0x94]
cmp eax, 0
je 0x100a1158
jmp 0x100a1172
mov eax, dword [ebp - 0x50]
mov eax, dword [eax]
mov byte [eax], 0
jmp 0x100a11c6
mov eax, dword [ebp - 0x50]
mov eax, dword [eax]
mov byte [eax], 1
jmp 0x100a11c6
mov ecx, dword [ebp - 0x4c]
mov edx, dword [ebp - 0x50]
mov esi, dword [0x10288b68]
xor eax, eax
sub eax, dword [0x10288b6c]
sub esi, eax
xor esi, 0xffffffff
or esi, 0xf54a75f0
xor esi, 0xffffffff
mov eax, esi
and eax, 0xce838054
or esi, 0xce838054
add eax, esi
imul eax, eax, 0x11d7422d
mov edx, dword [edx]
mov byte [edx], 0
mov ecx, dword [ecx]
mov dword [ecx], 2
cmp eax, 0x3bc69541
je 0x100a1913
jmp 0x100a11c6
mov ecx, dword [0x10288b70]
mov eax, dword [0x10288b74]
sub ecx, 0xfe80f3a7
add ecx, eax
add ecx, 0xfe80f3a7
mov eax, ecx
xor eax, 0xffffffff
or eax, 0xfde1cb91
or ecx, 0x21e346e
and eax, ecx
imul eax, eax, 0xb7200f50
xor eax, 0x8bceef7f
cmp eax, 0x60ab6efc
jb 0x100a192b
mov ecx, dword [ebp - 0x74]
mov edx, dword [0x10288b78]
mov esi, dword [0x10288b7c]
mov eax, edx
and eax, esi
or edx, esi
add eax, edx
sub eax, 0xca8b5dce
mov esi, 0x9d8b0ebf
xor edx, edx
div esi
mov edx, eax
add edx, 1
xor eax, 0xffffffff
or eax, 0xdf875842
add eax, edx
mov dword [ebp - 0x98], eax
call fcn.100061b0
mov eax, dword [ebp - 0x98]
cmp eax, 0x3baa63e2
ja 0x100a1207
jmp 0x100a1733
mov esi, dword [ebp - 0x24]
mov ebx, dword [ebp - 0x60]
mov eax, dword [ebp - 0x48]
mov ecx, dword [eax]
sub esp, 4
mov eax, esp
mov dword [eax], ebx
call fcn.1003e3f0
mov eax, dword [ebp - 0x48]
mov ecx, dword [eax]
call fcn.1004a3a0
mov edx, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x68]
mov edi, eax
mov dword [ebp - 0x10], 4
sub esp, 0x14
mov eax, esp
mov dword [eax + 0x10], ebx
mov dword [eax + 0xc], edi
mov dword [eax + 8], esi
mov dword [eax + 4], edx
mov dword [eax], ecx
call fcn.100a1cc0
add esp, 0x14
mov word [ebp - 0x9a], ax
jmp 0x100a12b3
mov eax, dword [ebp - 0x64]
mov ecx, dword [ebp - 0x60]
mov dx, word [ebp - 0x9a]
mov esi, dword [0x10288b88]
xor edi, edi
sub edi, dword [0x10288b8c]
sub esi, edi
add esi, 0xdc19906
add esi, 0x50521b03
sub esi, 0xdc19906
xor esi, 0xc2d132c
imul esi, esi, 0x93a4d57d
mov dword [ebp - 0xa0], esi
mov word [eax], dx
call fcn.10027aa0
mov ecx, dword [ebp - 0x64]
mov eax, dword [ebp - 0xa0]
movsx ecx, byte [ecx]
cmp ecx, 0
setl cl
mov byte [ebp - 0x9b], cl
cmp eax, 0x92a8f3e8
jae 0x100a12b3
mov al, byte [ebp - 0x9b]
test al, 1
jne 0x100a1332
jmp 0x100a13b4
mov eax, dword [0x10288b90]
xor ecx, ecx
sub ecx, dword [0x10288b94]
add eax, ecx
mov ecx, eax
xor ecx, 0xffffffff
and ecx, 0xf1b2316f
and eax, 0xe4dce90
sub eax, ecx
mov ecx, 0xa244e04b
xor edx, edx
div ecx
xor eax, 0xcd6d345b
cmp eax, 0x7a633141
jbe 0x100a1938
mov ecx, dword [ebp - 0x4c]
mov edx, dword [ebp - 0x50]
mov eax, dword [0x10288b98]
add eax, dword [0x10288b9c]
and eax, 0xea7a5e60
imul eax, eax, 0xb25009bd
mov esi, eax
add esi, 1
xor eax, 0xffffffff
or eax, 0x5c6262e5
add eax, esi
mov edx, dword [edx]
mov byte [edx], 0
mov ecx, dword [ecx]
mov dword [ecx], 2
cmp eax, 0x712e8384
ja 0x100a1938
jmp 0x100a16bf
mov edx, dword [ebp - 0x5c]
mov esi, dword [ebp - 0x68]
mov eax, dword [ebp - 0x58]
mov ecx, dword [ebp - 0x64]
movsx ecx, byte [ecx]
sub esp, 0x10
mov dword [esp], esi
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], eax
call fcn.100b7430
mov edx, dword [ebp - 0x54]
mov ecx, dword [ebp - 0x68]
add esp, 0x10
mov esi, eax
mov eax, dword [ebp - 0x5c]
mov dword [edx], esi
cmp dword [eax], ecx
je 0x100a14a3
mov eax, dword [0x10288ba0]
xor edx, edx
div dword [str.dFuN]
add eax, 0xd70e0f73
add eax, 1
mov edx, eax
xor edx, 0xffffffff
and edx, 0x9028ab6d
mov ecx, eax
and ecx, 0x6fd75492
imul ecx, edx
mov edx, eax
and edx, 0x9028ab6d
or eax, 0x9028ab6d
imul eax, edx
add eax, ecx
xor eax, 0x7a86c11e
cmp eax, 0xfe11eb04
ja 0x100a1950
mov ecx, dword [ebp - 0x58]
mov eax, dword [0x10288ba8]
sub eax, dword [0x10288bac]
mov esi, 0x5ffc4a55
xor edx, edx
div esi
and eax, 0xa1844486
mov edx, eax
and edx, 0xbe481285
shl edx, 1
add eax, 0xbe481285
sub eax, edx
cmp dword [ecx], 0
setne cl
mov byte [ebp - 0xa1], cl
cmp eax, 0x18dae2fa
jb 0x100a1950
mov al, byte [ebp - 0xa1]
test al, 1
jne 0x100a14a3
jmp 0x100a1496
mov eax, dword [ebp - 0x64]
test byte [eax + 1], 1
je 0x100a14bb
mov eax, dword [ebp - 0x4c]
mov ecx, dword [ebp - 0x50]
mov ecx, dword [ecx]
mov byte [ecx], 1
mov eax, dword [eax]
mov dword [eax], 2
jmp 0x100a16bf
mov eax, dword [ebp - 0x54]
mov ecx, dword [ebp - 0x50]
cmp dword [eax], 0
setne dl
mov ecx, dword [ecx]
and dl, 1
mov byte [ecx], dl
cmp dword [eax], 0
je 0x100a1627
mov eax, dword [0x10288bc0]
add eax, dword [0x10288bc4]
mov ecx, 0xd37e7c91
xor edx, edx
div ecx
mov ecx, eax
and ecx, 0x77c0d509
shl ecx, 1
xor eax, 0x77c0d509
add eax, ecx
mov edx, eax
xor edx, 0xffffffff
and edx, 0xbbcf11c5
mov ecx, eax
and ecx, 0x4430ee3a
imul ecx, edx
mov edx, eax
and edx, 0xbbcf11c5
or eax, 0xbbcf11c5
imul eax, edx
add eax, ecx
cmp eax, 0x20855cd5
jb 0x100a1955
mov ecx, dword [ebp - 0x54]
mov edx, dword [0x10288bc8]
add edx, dword [0x10288bcc]
mov eax, edx
xor eax, 0x81c779f1
and eax, edx
mov edx, eax
and edx, 0xac004486
xor edx, 0xffffffff
add eax, 0xac004486
add eax, 1
add eax, edx
add eax, 0xb8a257c1
sub eax, 0x39062b3e
sub eax, 0xb8a257c1
cmp dword [ecx], 1
setne cl
mov byte [ebp - 0xa2], cl
cmp eax, 0x6e7abdad
je 0x100a1955
mov al, byte [ebp - 0xa2]
test al, 1
jne 0x100a1595
jmp 0x100a1627
mov eax, dword [0x10288bd0]
mov ecx, dword [0x10288bd4]
add eax, 0x7d7e43
sub eax, ecx
sub eax, 0x7d7e43
add eax, 0xab417ba3
mov ecx, eax
xor ecx, 0x17ffc1b6
xor ecx, 0xffffffff
and ecx, 0x17ffc1b6
shl ecx, 1
sub ecx, 0x17ffc1b6
sub eax, ecx
imul eax, eax, 0x3968195e
cmp eax, 0xf009f83b
ja 0x100a195a
mov ecx, dword [ebp - 0x4c]
mov edx, dword [0x10288bd8]
and edx, dword [0x10288bdc]
or edx, 0x84616f2
mov eax, edx
or eax, 0x4bc9d811
xor eax, 0xffffffff
or edx, 0x4bc9d811
xor edx, 0xffffffff
or eax, edx
xor eax, 0xffffffff
sub eax, 0xa984daf2
mov ecx, dword [ecx]
mov dword [ecx], 2
cmp eax, 0xe9d327fa
jae 0x100a15dd
jmp 0x100a1627
mov eax, dword [0x10288be0]
imul eax, dword [0x10288be4]
xor eax, 0xc2164e59
mov ecx, eax
and ecx, 0xe544fcc2
shl ecx, 1
xor eax, 0xe544fcc2
add eax, ecx
sub eax, 0x1a3b9b88
cmp eax, 0x37502a0f
jbe 0x100a196a
mov eax, dword [0x10288be8]
mov esi, dword [0x10288bec]
mov ecx, eax
xor ecx, 0xffffffff
mov edx, esi
and edx, ecx
mov edi, esi
xor edi, 0xffffffff
mov ecx, eax
and ecx, edi
imul ecx, edx
mov edx, eax
and edx, esi
or eax, esi
imul eax, edx
add eax, ecx
xor eax, 0xffffffff
or eax, 0xb27a03c5
xor eax, 0xffffffff
add eax, 0xf74f9c6d
mov ecx, eax
xor ecx, 0x7e3e276d
xor ecx, 0xffffffff
and ecx, 0x7e3e276d
shl ecx, 1
sub ecx, 0x7e3e276d
sub eax, ecx
cmp eax, 0xa6326d4b
jae 0x100a1659
jmp 0x100a16bf
mov eax, dword [0x10288c00]
sub eax, dword [0x10288c04]
sub eax, 0xa257e24d
mov ecx, eax
and ecx, 0xa75c6ddb
shl ecx, 1
xor eax, 0xa75c6ddb
add eax, ecx
sub eax, 0x5b80b8db
cmp eax, 0x502095dd
je 0x100a196f
mov ecx, dword [0x10288c08]
xor ecx, dword [0x10288c0c]
add ecx, 0xfb1d2387
sub ecx, 0x3f2973b8
sub ecx, 0xfb1d2387
add ecx, 0xa32b7f68
mov eax, ecx
and eax, 0xc236ca26
xor ecx, 0xc236ca26
or eax, ecx
cmp eax, 0xc65e5605
jb 0x100a16f0
jmp 0x100a1733
mov dword [ebp - 0x10], 0xffffffff
mov eax, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x20]
mov edx, dword [0x10288c18]
xor esi, esi
sub esi, dword [0x10288c1c]
add edx, esi
add edx, 0x2b40d1bd
mov esi, edx
xor esi, 0xddc505b0
and edx, 0x223afa4f
shl edx, 1
sub edx, esi
mov esi, edx
and esi, 0xfac6df7d
shl esi, 1
xor edx, 0xfac6df7d
add edx, esi
mov dword [ebp - 0xa8], edx
sub esp, 8
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.100a5710
add esp, 8
mov cl, al
mov eax, dword [ebp - 0xa8]
mov byte [ebp - 0xa3], cl
cmp eax, 0xece511f7
je 0x100a1974
mov al, byte [ebp - 0xa3]
test al, 1
jne 0x100a17be
jmp 0x100a17ca
mov eax, dword [ebp - 0x4c]
mov eax, dword [eax]
mov ecx, dword [eax]
or ecx, 1
mov dword [eax], ecx
mov ecx, dword [ebp - 0x38]
mov eax, dword [0x10288c28]
xor edx, edx
div dword [0x10288c2c]
mov edx, dword [ebp - 0x20]
add eax, 0xcb24e83
mov esi, eax
xor esi, 0x3e3eeaf5
xor esi, 0xffffffff
and esi, 0x3e3eeaf5
shl esi, 1
sub esi, 0x3e3eeaf5
sub eax, esi
mov edi, eax
and edi, 0xa8ea9da4
mov esi, eax
or esi, 0xa8ea9da4
xor esi, 0xffffffff
imul esi, edi
mov edi, eax
and edi, 0x5715625b
or eax, 0x5715625b
imul eax, edi
add eax, esi
mov esi, dword [edx]
mov dword [ecx], esi
mov edx, dword [edx + 4]
mov dword [ecx + 4], edx
cmp eax, 0xe5b5927
je 0x100a17ca
mov eax, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x18]
mov dword fs:[0], ecx
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret 0x20
mov ebx, dword [ebp - 0x28]
mov edi, dword [ebp - 0x38]
push eax
mov esi, esp
push eax
mov ecx, esp
push eax
mov eax, esp
push eax
mov edx, esp
mov dword [ebp - 0xac], edx
push eax
mov edx, esp
mov dword [esi], edi
mov edi, dword [ebp - 0xac]
mov esi, dword [ebp - 0x30]
mov dword [ecx], esi
mov esi, dword [ebp - 0x3c]
mov ecx, dword [ebp - 0x2c]
mov dword [eax], ecx
mov ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x24]
mov dword [edi], ebx
mov dword [edx], esi
sub esp, 8
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.100a1b70
mov eax, dword [ebp - 0xac]
add esp, 8
mov ecx, dword [eax]
call fcn.1004a3a0
jmp 0x100a0cb2
mov ecx, dword [ebp - 0x78]
call fcn.10027aa0
mov edx, dword [ebp - 0x80]
mov eax, dword [ebp - 0x7c]
mov ecx, dword [ebp - 0x74]
mov dword [eax], edx
mov dword [ebp - 0x10], 0xffffffff
xor eax, eax
sub esp, 8
mov dword [esp], 1
mov dword [esp + 4], 0
call fcn.10084280
jmp 0x100a0e2b
mov ecx, dword [ebp - 0x70]
call fcn.100061b0
jmp 0x100a0f2e
jmp 0x100a0fd0
mov ecx, dword [ebp - 0x6c]
call fcn.100061b0
mov ecx, dword [ebp - 0x74]
call fcn.10008340
jmp 0x100a1051
jmp 0x100a1121
mov eax, dword [ebp - 0x4c]
mov ecx, dword [ebp - 0x50]
mov ecx, dword [ecx]
mov byte [ecx], 0
mov eax, dword [eax]
mov dword [eax], 2
jmp 0x100a1172
mov ecx, dword [ebp - 0x74]
call fcn.100061b0
jmp 0x100a1207
mov eax, dword [ebp - 0x4c]
mov ecx, dword [ebp - 0x50]
mov ecx, dword [ecx]
mov byte [ecx], 0
mov eax, dword [eax]
mov dword [eax], 2
jmp 0x100a136c
jmp 0x100a143f
jmp 0x100a152f
mov eax, dword [ebp - 0x4c]
mov eax, dword [eax]
mov dword [eax], 2
jmp 0x100a15dd
jmp 0x100a1659
jmp 0x100a16f0
mov eax, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x20]
sub esp, 8
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.100a5710
add esp, 8
jmp 0x100a173a