Function at 0x418470
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x14c
mov eax, dword [section..data]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
push edi
push 0x2659
push 0x10e61
push ecx
mov dword [ebp - 0x14c], edx
mov edx, 0xe59b
push 0x6d58
push ecx
mov dword [ebp - 0x148], ecx
mov dword [ebp - 0x104], 0xc6ef
mov dword [ebp - 0x13c], 0x3487
mov dword [ebp - 0x124], 0x156dc
mov dword [ebp - 0xfc], 0x1052a
call fcn.004022e0
mov ecx, 0x92a0
mov dword [ebp - 0x128], eax
sub ecx, eax
mov dword [ebp - 0xf8], 0x17bcb
mov dword [ebp - 0xf4], ecx
add esp, 0x14
mov ecx, 0xf244
mov dword [ebp - 0x114], 0xa903
cmp ecx, 0x505a
mov dword [ebp - 0x134], 0x14104
mov edi, 0x402f
sbb eax, eax
mov dword [ebp - 0x130], edi
and eax, 0xfffffce4
add eax, 0xc340
cmp ecx, 0x505a
mov dword [ebp - 0xf0], eax
sbb esi, esi
and esi, 0xfffdfbe2
add esi, 0x1f74d
mov dword [ebp - 0x120], esi
call fcn.00401610
mov ecx, dword [ebp - 0x128]
mov ebx, 0x1e40c
mov dword [ebp - 0x100], eax
add eax, 0xffff46eb
mov dword [ebp - 0x140], eax
mov dword [ebp - 0x11c], 0
mov dword [ebp - 0x118], 0x1250
test eax, eax
jle 0x4186b8
mov eax, dword [ebp - 0xf0]
mov edx, dword [ebp - 0xfc]
mov dword [ebp - 0xf0], eax
mov eax, 0x17bcb
mov dword [ebp - 0x118], 0x1250
nop dword [eax]
add edx, dword [ebp - 0x11c]
or eax, ecx
mov dword [ebp - 0xf8], eax
add ebx, 0x4351
mov eax, dword [ebp - 0x13c]
and eax, dword [ebp - 0x11c]
xor ebx, dword [ebp - 0xf4]
or edi, eax
mov dword [ebp - 0x13c], eax
mov eax, dword [ebp - 0xf8]
mov dword [ebp - 0xfc], edx
mov dword [ebp - 0x130], edi
cmp edi, 0x14c96
jge 0x41868e
or edx, dword [ebp - 0x118]
xor esi, 0x373c
xor dword [ebp - 0x13c], 0xf5ad
add ebx, 0x11c97
xor dword [ebp - 0xf0], 0x309d
and esi, dword [ebp - 0xf4]
mov dword [ebp - 0xfc], edx
cmp eax, 0xc476
jge 0x41868e
mov eax, dword [ebp - 0xf0]
add ecx, 0xffff5189
and dword [ebp - 0x13c], 0x6d5a
and eax, 0x1a98
or dword [ebp - 0x104], 0xf244
sub eax, 0x3442
xor dword [ebp - 0x118], 0x1143f
and ecx, edi
mov dword [ebp - 0xf0], eax
mov eax, 0x924c
sub eax, dword [ebp - 0xf0]
add ebx, eax
xor dword [ebp - 0x114], 0x118b6
mov eax, dword [ebp - 0xf8]
inc dword [ebp - 0x11c]
mov edx, dword [ebp - 0x140]
cmp dword [ebp - 0x11c], edx
mov edx, dword [ebp - 0xfc]
jl 0x4185b0
mov dword [ebp - 0x128], ecx
mov dword [ebp - 0x120], esi
add ecx, 0xfffef2e0
call fcn.00401690
sub esp, 0xc
call fcn.004046e0
mov dword [ebp - 0xec], eax
call fcn.00401a00
sub esp, 8
mov dword [ebp - 0x108], eax
call fcn.00401ea0
mov esi, dword [ebp - 0x130]
add esp, 0x14
mov edx, dword [ebp - 0x128]
mov edi, 0x6633
mov dword [ebp - 0x10c], eax
mov eax, dword [ebp - 0xf8]
mov dword [ebp - 0x12c], 0xe32c
nop
or dword [ebp - 0x10c], edx
xor eax, 0x17a0a
mov ecx, dword [ebp - 0x124]
and edi, 0x98b6
cmp dword [ebp - 0x114], 0x184f3
jge 0x41875f
mov edx, dword [ebp - 0x114]
sub ebx, 0x15bc1
and edx, dword [ebp - 0x104]
and dword [ebp - 0xfc], 0x16566
mov dword [ebp - 0x114], edx
mov edx, dword [ebp - 0x100]
add edx, esi
jmp 0x418765
mov edx, dword [ebp - 0x100]
inc dword [ebp - 0xf4]
and edx, 0xf244
or dword [ebp - 0x108], 0xc87d
add ecx, 0x14104
sub edi, 0xafb9
mov dword [ebp - 0x100], edx
mov edx, dword [ebp - 0x128]
add ebx, 0x14a12
cmp dword [ebp - 0x13c], 0xf4d4
mov dword [ebp - 0x124], ecx
je 0x4187db
xor dword [ebp - 0x104], 0xe01c
or ecx, edi
xor ebx, ebx
mov dword [ebp - 0x124], ecx
cmp dword [ebp - 0xf0], 0xa7f1
je 0x4187db
add dword [ebp - 0x100], 0x687b
add esi, 0xb430
cmp dword [ebp - 0xf4], 0xffff6338
jl 0x418710
mov edx, 0x4695
mov dword [ebp - 0x130], esi
mov esi, dword [ebp - 0x120]
mov dword [ebp - 0x110], edx
mov ecx, dword [ebp - 0x118]
xor eax, 0x7aaf
mov edx, dword [ebp - 0x100]
or ecx, 0xf244
add dword [ebp - 0xf0], ecx
sub edx, 0x1278c
xor dword [ebp - 0x10c], 0x17b3c
or dword [ebp - 0xec], edx
or dword [ebp - 0x13c], 0xdd7c
inc dword [ebp - 0xfc]
sub dword [ebp - 0x12c], 0x17e10
xor dword [ebp - 0xf4], 0x3819
mov dword [ebp - 0x118], ecx
mov ecx, dword [ebp - 0x134]
or esi, ecx
mov dword [ebp - 0x100], edx
cmp ecx, 0x1744a
je 0x418957
sub esi, dword [ebp - 0x13c]
sub ecx, 0x15c8b
and ebx, dword [ebp - 0xec]
and eax, edi
or dword [ebp - 0x124], 0xbf22
mov dword [ebp - 0x134], ecx
mov ecx, dword [ebp - 0x104]
or ecx, dword [ebp - 0x108]
mov dword [ebp - 0x104], ecx
cmp esi, 0x175ff
jge 0x418957
mov edx, dword [ebp - 0x114]
and eax, ecx
mov ecx, dword [ebp - 0x130]
or esi, 0xf244
sub dword [ebp - 0xec], ecx
and dword [ebp - 0x13c], edx
or dword [ebp - 0x104], 0xaf76
cmp dword [ebp - 0x10c], 0xe34b
jge 0x41895d
add eax, dword [ebp - 0xf0]
add esi, dword [ebp - 0x134]
cmp eax, 0x18247
jne 0x41895d
mov edx, dword [ebp - 0x10c]
mov eax, edi
or dword [ebp - 0x104], edx
or eax, 0x18247
cmp dword [ebp - 0xec], 0xe40b
je 0x41895d
mov ecx, dword [ebp - 0x128]
xor dword [ebp - 0x134], ecx
mov ecx, dword [ebp - 0x108]
and dword [ebp - 0x110], ebx
add dword [ebp - 0x114], 0x2a78
xor dword [ebp - 0x104], ecx
xor dword [ebp - 0x12c], 0x78f9
or eax, edx
mov ecx, dword [ebp - 0x130]
cmp dword [ebp - 0xfc], 0x10563
jl 0x418802
mov dword [ebp - 0xf8], eax
mov eax, dword [ebp - 0xec]
mov dword [ebp - 0x138], 0xf244
cmp eax, 0xffff7d99
jge 0x418bd8
mov dword [ebp - 0x11c], 0xffff7d99
sub dword [ebp - 0x11c], eax
imul eax, dword [ebp - 0x11c], 0xffff7362
mov dword [ebp - 0xec], 0xffff7d99
mov dword [ebp - 0x138], 0xf244
add dword [ebp - 0x128], eax
mov eax, dword [ebp - 0x124]
nop dword [eax + eax]
xor dword [ebp - 0x108], 0xfd7a
and edi, eax
xor dword [ebp - 0x100], 0x150c1
xor edi, ebx
or dword [ebp - 0x104], 0x69d1
sub dword [ebp - 0xf4], 0x164
mov eax, dword [ebp - 0x108]
cmp eax, 0xbf8d
jge 0x418a93
mov edx, dword [ebp - 0xf4]
sub edi, 0x9a3c
add edx, dword [ebp - 0x10c]
mov eax, dword [ebp - 0x12c]
xor edx, 0x35de
sub dword [ebp - 0xf0], eax
or dword [ebp - 0x13c], 0x6440
mov ecx, dword [ebp - 0x130]
mov dword [ebp - 0xf4], edx
cmp edi, 0x17a51
jle 0x418a8d
or eax, dword [ebp - 0xfc]
xor ecx, 0x15c1b
xor dword [ebp - 0x138], 0x17d1f
add edi, 0x3656
xor dword [ebp - 0x118], esi
sub dword [ebp - 0x110], 0x96c2
inc dword [ebp - 0xf0]
mov dword [ebp - 0x130], ecx
mov dword [ebp - 0x12c], eax
mov eax, dword [ebp - 0x108]
xor dword [ebp - 0xfc], 0x6a2c
or eax, 0x3f01
xor ebx, 0x17618
mov dword [ebp - 0x108], eax
cmp dword [ebp - 0x138], 0x1979
jge 0x418bc5
mov edx, dword [ebp - 0xfc]
and edx, dword [ebp - 0x108]
mov eax, dword [ebp - 0xf8]
sub edx, 0x18025
xor eax, 0x6f03
mov dword [ebp - 0xfc], edx
mov edx, dword [ebp - 0x110]
mov dword [ebp - 0xf8], eax
cmp ecx, 0x3f9e
jge 0x418bc5
add edx, dword [ebp - 0xfc]
or edi, dword [ebp - 0xf0]
or dword [ebp - 0x10c], 0x13e22
mov dword [ebp - 0x110], edx
mov edx, dword [ebp - 0xf0]
or dword [ebp - 0xfc], edx
cmp dword [ebp - 0x134], 0x13bc7
mov edx, dword [ebp - 0x110]
jne 0x418bc5
or dword [ebp - 0xf0], esi
add ebx, 0x10a1
xor edx, dword [ebp - 0xf0]
and ebx, 0x2041
or ebx, 0xd9a0
mov dword [ebp - 0x110], edx
cmp esi, 0x12ffc
jle 0x418bc5
mov edx, dword [ebp - 0x100]
xor edi, 0xcc23
sub edx, dword [ebp - 0x124]
add eax, dword [ebp - 0xf0]
sub dword [ebp - 0x13c], 0x14765
or eax, 0x7af1
or dword [ebp - 0xfc], ebx
mov dword [ebp - 0x100], edx
mov edx, dword [ebp - 0x110]
sub ecx, edx
sub edx, dword [ebp - 0x10c]
mov dword [ebp - 0xf8], eax
mov eax, dword [ebp - 0x124]
or dword [ebp - 0x118], eax
inc ebx
mov dword [ebp - 0x130], ecx
mov dword [ebp - 0x110], edx
jmp 0x418bcb
mov eax, dword [ebp - 0x124]
sub dword [ebp - 0x11c], 1
jne 0x4189d0
mov eax, dword [ebp - 0xf8]
nop
mov edx, dword [ebp - 0xf0]
or eax, 0x7771
or dword [ebp - 0xf4], 0x117db
add edx, 0x3cdf
xor dword [ebp - 0x12c], 0x1612e
mov dword [ebp - 0xf0], edx
cmp edx, 0x127b7
jne 0x418d02
mov edx, dword [ebp - 0x104]
xor eax, 0x4abb
or dword [ebp - 0x134], edx
or dword [ebp - 0x110], esi
add eax, dword [ebp - 0xfc]
cmp dword [ebp - 0xfc], 0x6334
jge 0x418d02
add dword [ebp - 0x108], ebx
xor dword [ebp - 0xfc], 0x7f5b
cmp dword [ebp - 0x128], 0xb80e
je 0x418d02
mov edx, dword [ebp - 0x13c]
add esi, 0x6270
mov ecx, dword [ebp - 0x108]
or edx, edi
xor dword [ebp - 0xec], edx
sub ecx, dword [ebp - 0x114]
or dword [ebp - 0xf4], 0x5836
add edi, dword [ebp - 0x128]
add dword [ebp - 0x134], 0x1110d
mov dword [ebp - 0x13c], edx
mov edx, dword [ebp - 0x100]
sub dword [ebp - 0xfc], edx
cmp ecx, 0x4bb0
mov edx, dword [ebp - 0x110]
mov dword [ebp - 0x108], ecx
mov ecx, dword [ebp - 0x130]
jne 0x418d02
xor dword [ebp - 0x128], 0x8b4b
or edx, esi
or dword [ebp - 0x100], 0xb1ad
add dword [ebp - 0xf4], ebx
mov dword [ebp - 0x108], 0x4bb0
sub dword [ebp - 0x108], edx
sub eax, dword [ebp - 0x118]
mov dword [ebp - 0x110], edx
or dword [ebp - 0x118], eax
xor ecx, 0x420b
add dword [ebp - 0x138], eax
xor edi, 0x107db
inc dword [ebp - 0x124]
or eax, dword [ebp - 0xf4]
cmp dword [ebp - 0x124], 0xfffffffc
mov dword [ebp - 0x130], ecx
jl 0x418be0
sub esp, 0xc
mov dword [ebp - 0xf8], edi
call fcn.00401a00
mov ecx, dword [ebp - 0xf4]
mov edx, dword [ebp - 0xec]
add ecx, 0x1670a
push ecx
mov ecx, dword [ebp - 0x13c]
add ecx, 0xffff8abf
mov dword [ebp - 0x140], eax
push ecx
lea edx, [edx + 0x1d681]
call fcn.004043b0
sub esp, 8
mov dword [ebp - 0xfc], eax
call fcn.00404370
mov ecx, dword [ebp - 0x110]
add esp, 0x1c
mov edx, eax
mov eax, dword [ebp - 0x138]
inc ecx
and dword [ebp - 0x12c], eax
xor edx, 0x69b2
mov eax, dword [ebp - 0xec]
and eax, dword [ebp - 0xf0]
sub dword [ebp - 0x130], 0x3b71
sub dword [ebp - 0x100], 0x5ce4
mov dword [ebp - 0xf4], eax
mov dword [ebp - 0xf0], eax
mov eax, dword [ebp - 0x104]
xor eax, dword [ebp - 0x140]
or eax, dword [ebp - 0x12c]
mov dword [ebp - 0x140], eax
mov eax, dword [ebp - 0x128]
sub ebx, eax
add ebx, 0x60a9
add esi, eax
or ebx, dword [ebp - 0xf8]
mov dword [ebp - 0x11c], ebx
mov ebx, dword [ebp - 0xfc]
dec ebx
or ebx, eax
mov dword [ebp - 0xfc], ebx
inc dword [ebp - 0xfc]
mov ebx, dword [ebp - 0x11c]
cmp ecx, 0x4696
jl 0x418d91
sub esp, 0x1c
mov dword [ebp - 0x108], edx
mov dword [ebp - 0x110], ecx
mov dword [ebp - 0x120], esi
call fcn.00404370
mov edi, dword [ebp - 0x138]
add esp, 0x18
mov esi, dword [ebp - 0x104]
mov edx, dword [ebp - 0x12c]
mov dword [ebp - 0x144], eax
lea ecx, [edi - 0x23edd]
push ecx
lea ecx, [esi - 0x3bb9]
push ecx
mov ecx, dword [ebp - 0x100]
lea edx, [edx - 0x1fe1f]
add ecx, 0xffffc018
push ecx
push ecx
lea ecx, [esi + 0x46f9]
call fcn.004047a0
mov ecx, dword [ebp - 0x128]
lea edx, [edi - 0x28422]
add esp, 0x14
mov dword [ebp - 0x104], eax
mov eax, dword [ebp - 0x148]
add ecx, 0xffff838e
push ecx
mov ecx, dword [ebp - 0xec]
mov esi, dword [eax + 0x3c]
add ecx, 0x190c8
push ecx
push ecx
mov ecx, dword [ebp - 0x10c]
add esi, eax
add ecx, 0x2905
push ecx
push ecx
call fcn.004022e0
mov edx, dword [ebp - 0x124]
lea edi, [ebp - 0xe8]
add esi, 0x18
mov dword [ebp - 0x114], eax
mov ecx, 0x38
mov dword [ebp - 0x100], 0
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [ebp - 0xec]
xor edx, 0x12ed4
or ecx, dword [ebp - 0x12c]
add esp, 0x14
mov esi, dword [ebp - 0x108]
mov dword [ebp - 0x124], edx
mov dword [ebp - 0xec], ecx
cmp ebx, 0xb326
jle 0x419005
add dword [ebp - 0x128], eax
mov eax, dword [ebp - 0x130]
or eax, dword [ebp - 0x138]
xor ecx, dword [ebp - 0x144]
and eax, 0x10a52
cmp dword [ebp - 0x114], 0x889c
mov dword [ebp - 0x130], eax
mov dword [ebp - 0xec], ecx
jle 0x419005
xor eax, dword [ebp - 0x140]
mov ecx, dword [ebp - 0x134]
and eax, 0x1a89
add esi, dword [ebp - 0xfc]
and dword [ebp - 0xf8], 0x1376a
sub dword [ebp - 0x104], ecx
mov dword [ebp - 0x108], esi
mov dword [ebp - 0x130], eax
cmp edx, 0x4964
jge 0x419005
mov edx, dword [ebp - 0xfc]
add edx, dword [ebp - 0x13c]
add eax, dword [ebp - 0x140]
sub dword [ebp - 0x110], 0x6334
mov dword [ebp - 0xfc], edx
mov dword [ebp - 0x130], eax
cmp ecx, 0x903d
jle 0x419005
xor dword [ebp - 0x12c], 0x83cf
add eax, 0x1562
or dword [ebp - 0x144], 0x3f41
add dword [ebp - 0xec], 0x140b5
mov dword [ebp - 0x130], eax
mov dword [ebp - 0x100], 0x1015d
call fcn.00401fb0
push ecx
mov dword [ebp - 0x10c], eax
call fcn.004034a0
mov ecx, dword [ebp - 0x118]
add esp, 4
mov dword [ebp - 0xf0], eax
cmp ecx, 0x2f77e
jge 0x4191b7
mov eax, dword [ebp - 0xf4]
add ecx, 0xfffd0882
mov edx, dword [ebp - 0x110]
imul ecx, ecx, 0x2325
mov dword [ebp - 0xf4], eax
add esi, ecx
mov ecx, dword [ebp - 0x130]
mov dword [ebp - 0x108], esi
mov esi, dword [ebp - 0x120]
mov edi, dword [ebp - 0x100]
or dword [ebp - 0x114], edi
mov edi, dword [ebp - 0x13c]
xor dword [ebp - 0x104], esi
sub dword [ebp - 0x10c], edi
xor dword [ebp - 0xec], 0xf369
cmp dword [ebp - 0x104], 0xd5b4
mov edi, dword [ebp - 0xf8]
jge 0x41915c
mov esi, dword [ebp - 0x144]
or dword [ebp - 0xec], esi
mov esi, dword [ebp - 0x124]
add dword [ebp - 0x104], edi
xor esi, 0x610a
add esi, 0x16f73
and edi, eax
mov dword [ebp - 0x124], esi
mov esi, dword [ebp - 0x118]
xor dword [ebp - 0x134], esi
cmp dword [ebp - 0x114], 0x16bf4
mov dword [ebp - 0xf8], edi
jne 0x41915c
mov eax, dword [ebp - 0xec]
sub edx, 0xf195
or edi, dword [ebp - 0x12c]
add eax, 0xfffefea6
sub edi, dword [ebp - 0x104]
xor eax, 0x11d83
or dword [ebp - 0xf4], 0x799e
and dword [ebp - 0x100], 0x4ef0
xor ebx, dword [ebp - 0xf0]
mov dword [ebp - 0xec], eax
mov eax, ecx
or eax, 0x137f
mov dword [ebp - 0xf8], edi
mov dword [ebp - 0x114], eax
mov eax, dword [ebp - 0x144]
xor eax, 0x9d7d
dec eax
mov dword [ebp - 0x144], eax
mov eax, dword [ebp - 0xf4]
mov esi, dword [ebp - 0x118]
and ebx, edi
and dword [ebp - 0x100], 0x1074c
inc esi
add dword [ebp - 0x124], edx
and dword [ebp - 0x138], 0x41ef
mov dword [ebp - 0x11c], ebx
mov ebx, dword [ebp - 0xec]
and dword [ebp - 0x12c], ebx
cmp esi, 0x2f77e
mov ebx, dword [ebp - 0x11c]
mov dword [ebp - 0x118], esi
mov esi, dword [ebp - 0x120]
jl 0x419063
mov dword [ebp - 0x110], edx
jmp 0x4191bd
mov esi, dword [ebp - 0x120]
call fcn.00404490
mov dword [ebp - 0xec], eax
mov eax, dword [ebp - 0x114]
cmp eax, 0x12f6a
jge 0x41930f
mov edx, dword [ebp - 0x134]
mov ecx, 0x12f6a
sub ecx, eax
mov dword [ebp - 0x114], 0x12f6a
mov dword [ebp - 0x140], ecx
mov ecx, dword [ebp - 0x10c]
nop dword [eax]
add edx, dword [ebp - 0x124]
xor ecx, 0x7d21
and ecx, dword [ebp - 0x13c]
sub esi, dword [ebp - 0xec]
cmp dword [ebp - 0x12c], 0x16faa
mov ebx, dword [ebp - 0x11c]
jge 0x41925a
and dword [ebp - 0x12c], 0x12fdd
or esi, dword [ebp - 0x100]
sub dword [ebp - 0xf0], 0x5903
sub dword [ebp - 0x118], 0x13f7d
mov edi, dword [ebp - 0xfc]
xor dword [ebp - 0x128], edi
sub edx, dword [ebp - 0xec]
and esi, 0x15a5d
mov eax, dword [ebp - 0x130]
xor ecx, dword [ebp - 0x100]
xor eax, edx
add dword [ebp - 0x12c], 0x680f
or dword [ebp - 0x138], 0x18175
or dword [ebp - 0xfc], 0xf253
sub dword [ebp - 0x128], 0xedee
mov dword [ebp - 0x10c], ecx
mov dword [ebp - 0x134], edx
mov dword [ebp - 0x130], eax
cmp ebx, 0x146c5
jne 0x4192fa
add dword [ebp - 0xf0], eax
sub ecx, 0xf58d
mov dword [ebp - 0x10c], ecx
cmp esi, 0xa3d8
jae 0x4192fa
add dword [ebp - 0x104], eax
and dword [ebp - 0x110], 0x171aa
xor dword [ebp - 0x124], 0x93c5
xor dword [ebp - 0x138], 0x5509
add esi, 0x3362
sub dword [ebp - 0x140], 1
jne 0x419200
mov dword [ebp - 0x120], esi
jmp 0x41931b
mov eax, dword [ebp - 0x130]
mov ecx, dword [ebp - 0x10c]
cmp dword [ebp - 0xfc], 0xf3f4
jge 0x419549
mov edx, dword [ebp - 0x108]
jmp 0x419339
mov ecx, dword [ebp - 0x10c]
xor dword [ebp - 0x138], edx
sub esi, 0xc3f1
sub ecx, 0x138de
mov dword [ebp - 0x120], esi
cmp dword [ebp - 0x100], 0xd108
mov dword [ebp - 0x10c], ecx
je 0x41939b
mov ecx, dword [ebp - 0xf0]
and eax, 0x6e54
and dword [ebp - 0x128], ecx
mov ecx, dword [ebp - 0xf4]
add dword [ebp - 0x118], edx
and ecx, esi
sub dword [ebp - 0xec], 0x164a7
dec eax
mov dword [ebp - 0xf4], ecx
mov dword [ebp - 0x130], eax
jmp 0x4193a1
mov ecx, dword [ebp - 0xf4]
mov edi, dword [ebp - 0xfc]
sub dword [ebp - 0x128], 0x853b
inc edi
and dword [ebp - 0x134], edi
mov dword [ebp - 0xfc], edi
mov edi, dword [ebp - 0x12c]
and dword [ebp - 0x100], edi
cmp edi, 0x77c8
jne 0x41952d
sub esi, dword [ebp - 0x134]
or eax, 0x13d38
and dword [ebp - 0x118], 0x1576
add ecx, 0x15cf3
add dword [ebp - 0xec], 0x18627
xor eax, 0xc552
cmp dword [ebp - 0x124], 0x15561
mov ebx, dword [ebp - 0x110]
mov dword [ebp - 0xf4], ecx
mov dword [ebp - 0x130], eax
mov dword [ebp - 0x120], esi
jge 0x41952d
and ebx, dword [ebp - 0xf0]
and eax, 0x12ff5
mov edi, dword [ebp - 0xf8]
sub edx, 0x36f7
cmp dword [ebp - 0xec], 0x14f1f
mov dword [ebp - 0x110], ebx
mov dword [ebp - 0x130], eax
jne 0x41952d
mov esi, dword [ebp - 0x134]
sub ecx, 0x17285
and esi, dword [ebp - 0x118]
or edi, 0x11a1a
or esi, dword [ebp - 0x10c]
and dword [ebp - 0x138], 0xeab0
sub dword [ebp - 0xf0], 0x77c8
mov dword [ebp - 0x134], esi
mov esi, dword [ebp - 0x120]
mov dword [ebp - 0xf4], ecx
mov dword [ebp - 0xf8], edi
cmp edx, 0x177fe
jle 0x41952d
mov esi, dword [ebp - 0x100]
xor edi, 0xaca9
or dword [ebp - 0x124], esi
mov esi, dword [ebp - 0x134]
or esi, 0x77c8
mov dword [ebp - 0xf8], edi
cmp dword [ebp - 0x10c], 0x86ea
mov dword [ebp - 0x12c], esi
mov esi, dword [ebp - 0x120]
jge 0x41952d
or ecx, dword [ebp - 0xf0]
sub edi, 0x1544b
and dword [ebp - 0x118], 0x1b5b
xor dword [ebp - 0x114], 0xc2c6
xor dword [ebp - 0x138], 0x743e
xor dword [ebp - 0x104], 0x933a
mov dword [ebp - 0xf4], ecx
mov dword [ebp - 0xf8], edi
cmp dword [ebp - 0xfc], 0xf3f4
jl 0x419333
mov ebx, dword [ebp - 0x11c]
mov dword [ebp - 0x108], edx
mov ecx, dword [ebp - 0x138]
lea edx, [eax + 0x7cbf]
lea ecx, [ecx - 0x2f0]
call fcn.00402840
mov edi, dword [ebp - 0x130]
mov ecx, dword [ebp - 0x108]
mov edx, dword [ebp - 0x10c]
mov dword [ebp - 0x140], eax
mov eax, dword [ebp - 0x134]
nop
and dword [ebp - 0x114], 0x8a54
and eax, edx
inc dword [ebp - 0x12c]
and ecx, edi
and dword [ebp - 0x13c], 0x15157
or ecx, ebx
mov dword [ebp - 0x134], eax
or edi, 0xa6e2
mov eax, dword [ebp - 0x140]
and dword [ebp - 0x124], eax
mov eax, esi
and eax, ebx
and dword [ebp - 0x128], eax
mov eax, dword [ebp - 0x134]
sub ebx, eax
cmp dword [ebp - 0xec], 0x2023
je 0x419675
mov edx, dword [ebp - 0x12c]
and dword [ebp - 0xec], 0xeaa7
add edx, 0xffffb3c3
add dword [ebp - 0xfc], edx
mov edx, dword [ebp - 0x114]
xor edx, 0xb1ae
add dword [ebp - 0x100], edx
mov dword [ebp - 0x114], edx
mov edx, dword [ebp - 0x10c]
cmp ecx, 0x10f08
jne 0x419675
or dword [ebp - 0x13c], 0xdbf7
xor esi, 0x1149d
add dword [ebp - 0x110], 0x14204
mov ecx, 0x10f08
sub ecx, dword [ebp - 0x118]
xor ebx, 0x96ad
add dword [ebp - 0x114], 0xba9f
add dword [ebp - 0xfc], edx
mov dword [ebp - 0x120], esi
mov esi, dword [ebp - 0x140]
xor esi, dword [ebp - 0x13c]
mov dword [ebp - 0x140], esi
mov esi, dword [ebp - 0x120]
cmp dword [ebp - 0x12c], 0x26820
jl 0x419580
mov edi, dword [ebp - 0x88]
sub esp, 0xc
add edi, dword [ebp - 0x148]
mov dword [ebp - 0x108], ecx
mov dword [ebp - 0x11c], edi
call fcn.00401a00
mov ecx, eax
add esp, 0xc
mov eax, dword [edi + 0x20]
add eax, dword [ebp - 0x148]
mov edi, dword [ebp - 0xf8]
mov dword [ebp - 0x118], ecx
mov dword [ebp - 0x130], eax
cmp ebx, 0x21061
jge 0x4198f2
mov ecx, dword [ebp - 0x110]
mov edx, dword [ebp - 0xf4]
mov esi, dword [ebp - 0x108]
mov eax, dword [ebp - 0x10c]
nop dword [eax]
xor eax, dword [ebp - 0xec]
sub esi, 0x5cf6
mov dword [ebp - 0x140], edx
mov dword [ebp - 0x10c], eax
mov dword [ebp - 0x108], esi
cmp ecx, 0xfbc8
jne 0x4197d0
or esi, dword [ebp - 0xfc]
add dword [ebp - 0x124], 0x14933
mov ecx, dword [ebp - 0x110]
mov dword [ebp - 0x108], esi
cmp eax, 0xf6b8
je 0x4197d0
mov eax, dword [ebp - 0x12c]
mov ecx, 0xc6f1
add eax, eax
mov dword [ebp - 0x110], ecx
mov dword [ebp - 0x12c], eax
mov eax, dword [ebp - 0xf0]
add eax, 0xffffb618
xor eax, 0x17fe8
mov dword [ebp - 0xf0], eax
mov eax, esi
and eax, dword [ebp - 0x10c]
or eax, dword [ebp - 0x100]
cmp dword [ebp - 0x114], 0xe6dd
je 0x4197d0
mov edx, dword [ebp - 0x114]
inc ebx
sub dword [ebp - 0xfc], 0x74
or edx, 0x5dc4
add dword [ebp - 0x104], 0x16e6f
add edi, edx
mov dword [ebp - 0x114], edx
xor eax, 0x51ac
mov edx, dword [ebp - 0x13c]
or edx, dword [ebp - 0x140]
mov dword [ebp - 0x128], 0
jmp 0x4198d4
or dword [ebp - 0x114], 0x5dc4
inc ebx
add edi, dword [ebp - 0x114]
xor eax, 0x51ac
or edx, dword [ebp - 0x13c]
cmp ecx, 0x172dd
jne 0x4198d4
xor esi, ebx
and eax, 0xb64
mov dword [ebp - 0x108], esi
mov esi, dword [ebp - 0xf0]
xor dword [ebp - 0x128], esi
cmp dword [ebp - 0x124], 0x4a1e
mov esi, dword [ebp - 0x108]
jle 0x4198d4
mov esi, dword [ebp - 0x104]
or eax, 0x12eca
or esi, dword [ebp - 0x100]
and dword [ebp - 0x134], edi
and dword [ebp - 0xec], 0xb11f
cmp esi, 0x7bf4
mov dword [ebp - 0x104], esi
mov esi, dword [ebp - 0x108]
jge 0x4198d4
mov ecx, dword [ebp - 0x104]
add edi, 0xd58e
or ecx, dword [ebp - 0x134]
sub edx, dword [ebp - 0x12c]
add dword [ebp - 0x128], 0x1e74
and dword [ebp - 0xec], 0xd0a7
and dword [ebp - 0xf0], 0x6b44
mov dword [ebp - 0x104], ecx
mov ecx, 0x142b9
mov dword [ebp - 0x110], ecx
cmp edx, 0xe66d
je 0x4198d4
mov ecx, dword [ebp - 0x118]
sub eax, edi
xor dword [ebp - 0x114], ecx
mov ecx, 0x142b9
sub dword [ebp - 0x100], 0x1300f
sub ecx, edx
mov dword [ebp - 0x110], ecx
cmp ebx, 0x21061
jl 0x4196f0
mov esi, dword [ebp - 0x120]
mov ecx, dword [ebp - 0x118]
mov dword [ebp - 0xf4], edx
mov eax, dword [ebp - 0x110]
mov edx, dword [ebp - 0xf0]
jmp 0x419906
mov ecx, dword [ebp - 0x118]
or edi, dword [ebp - 0xfc]
add eax, 0x16986
sub edx, dword [ebp - 0x128]
xor ecx, edi
mov dword [ebp - 0xf0], edx
mov dword [ebp - 0x118], ecx
mov dword [ebp - 0x110], eax
cmp eax, 0x1103f
je 0x419a0c
mov ecx, dword [ebp - 0x138]
sub dword [ebp - 0x124], ecx
mov ecx, dword [ebp - 0xf4]
cmp ebx, 0x162f
jge 0x419a12
sub dword [ebp - 0xec], ecx
xor edx, ecx
mov dword [ebp - 0xf0], edx
mov edx, dword [ebp - 0x108]
and edx, 0x3200
xor edx, eax
cmp dword [ebp - 0x124], 0x148b1
mov dword [ebp - 0x108], edx
je 0x419a18
xor eax, dword [ebp - 0x104]
and dword [ebp - 0x118], 0x3d63
add dword [ebp - 0xf0], 0x6972
mov dword [ebp - 0x110], eax
cmp eax, 0x971f
jge 0x419a18
mov eax, dword [ebp - 0x104]
sub esi, 0x5723
xor dword [ebp - 0xf0], eax
or dword [ebp - 0x138], 0xf831
cmp dword [ebp - 0x128], 0x129cd
mov eax, dword [ebp - 0x110]
jne 0x419a18
mov edx, dword [ebp - 0xfc]
or esi, 0xdb50
and dword [ebp - 0x118], 0x3bb
add edx, edx
add ebx, 0x177b5
mov dword [ebp - 0xfc], edx
inc ecx
mov dword [ebp - 0xf4], ecx
jmp 0x419a12
mov ecx, dword [ebp - 0xf4]
mov edx, dword [ebp - 0x108]
inc dword [ebp - 0x104]
sub ebx, esi
cmp dword [ebp - 0x138], 0x12125
jle 0x419aa1
mov eax, esi
or edx, 0x59f1
and eax, 0x58ef
mov dword [ebp - 0x108], edx
and dword [ebp - 0x118], eax
sub ecx, 0x114c9
mov eax, dword [ebp - 0x110]
add ebx, 0x11f1c
cmp dword [ebp - 0x128], 0x515
mov dword [ebp - 0xf4], ecx
jne 0x419aa1
or esi, edx
mov dword [ebp - 0x128], 0x105
mov edx, dword [ebp - 0xf0]
add ecx, 0xfffe8baf
sub dword [ebp - 0x138], esi
add ecx, edx
sub edi, 0x6bab
mov dword [ebp - 0xf4], ecx
dec dword [ebp - 0xec]
jmp 0x419aa7
mov edx, dword [ebp - 0xf0]
cmp dword [ebp - 0x104], 0xfffff723
jl 0x419900
mov ebx, dword [ebp - 0x11c]
sub esp, 0x1c
mov eax, dword [ebx + 0x1c]
add eax, dword [ebp - 0x148]
mov dword [ebp - 0x110], eax
call fcn.00404370
mov eax, dword [ebp - 0x118]
add esp, 0x18
add eax, 0x137d5
push eax
push ecx
call fcn.00403f10
mov eax, dword [ebx + 0x24]
sub esp, 0x14
add eax, dword [ebp - 0x148]
mov dword [ebp - 0x124], eax
call fcn.00401240
mov ecx, dword [ebp - 0xec]
add esp, 0x18
mov ebx, dword [ebx + 0x18]
add ecx, 0x1ff
mov dword [ebp - 0x128], ebx
lea edx, [eax + 0x1c07]
push ecx
call fcn.00403690
add esp, 0xc
mov dword [ebp - 0x138], 0
test ebx, ebx
je 0x41a057
nop dword [eax]
push 0xee47
mov ecx, 0x18108
mov dword [ebp - 0x11c], 0x18224
mov dword [ebp - 0xfc], 0x2940
mov dword [ebp - 0x114], 0xa65f
mov dword [ebp - 0x144], 0x2db0
mov dword [ebp - 0x140], 0x11305
call fcn.00401170
mov edx, 0x2ab5b
mov dword [ebp - 0x100], 0x6000
mov eax, 0x22086
mov dword [ebp - 0x108], edx
add esp, 4
mov dword [ebp - 0x10c], eax
mov ecx, 0x1d0f4
mov dword [ebp - 0xf8], 0x167f2
mov dword [ebp - 0x120], 0x6f3b
mov esi, 0x1c00c
mov dword [ebp - 0x104], 0x10325
mov edi, 0x130f4
mov dword [ebp - 0xec], 0xffffd7a0
mov ebx, 0x3fffe
mov dword [ebp - 0xf0], 0x10c
mov dword [ebp - 0xf4], 0x136de
mov dword [ebp - 0x118], 0xfffef8aa
nop
mov eax, dword [ebp - 0x118]
add eax, dword [ebp - 0x11c]
add dword [ebp - 0xec], esi
xor ebx, dword [ebp - 0x11c]
xor ecx, dword [ebp - 0x10c]
dec ebx
add edi, dword [ebp - 0x100]
add dword [ebp - 0xec], 0x15e9
add dword [ebp - 0x120], 0xa1e7
mov dword [ebp - 0x118], eax
mov eax, dword [ebp - 0x10c]
inc eax
mov dword [ebp - 0x134], ecx
mov dword [ebp - 0x10c], eax
cmp eax, 0x22087
jl 0x419c00
mov ecx, dword [ebp - 0x130]
mov eax, dword [ebp - 0x138]
mov edx, dword [ebp - 0x118]
push ecx
mov eax, dword [ecx + eax*4]
mov dword [ebp - 0x12c], eax
lea edx, [edx - 0x78bd]
mov eax, dword [ebp - 0x144]
add eax, 0xfd30
push eax
push 0xb446
push 0xc526
push ecx
lea ecx, [edi - 0x59fc]
call fcn.004047a0
add esp, 0x14
mov dword [ebp - 0x11c], eax
call fcn.00402390
mov ecx, dword [ebp - 0x144]
or ebx, 0x10adf
and dword [ebp - 0x120], 0xa046
add ebx, 0x4f64
or dword [ebp - 0x10c], 0xc5e5
mov dword [ebp - 0x13c], eax
mov eax, dword [ebp - 0xf4]
lea ecx, [ecx + 0x10277]
add dword [ebp - 0x134], eax
add eax, 0x11305
push 0xfdd3
mov dword [ebp - 0xf4], eax
sub esp, 8
mov eax, dword [ebp - 0xec]
add eax, 0xffff5def
push eax
call fcn.00401470
mov ecx, dword [ebp - 0x10c]
add esp, 0x10
mov edx, dword [ebp - 0x134]
sub eax, 0x1681b
mov dword [ebp - 0xec], eax
mov eax, dword [ebp - 0xfc]
mov dword [ebp - 0xfc], eax
mov eax, dword [ebp - 0xf8]
mov dword [ebp - 0xf8], eax
mov eax, dword [ebp - 0x100]
mov dword [ebp - 0x100], eax
mov eax, dword [ebp - 0x108]
mov dword [ebp - 0x10c], ecx
nop word [eax + eax]
mov ecx, dword [ebp - 0x104]
or eax, ecx
add dword [ebp - 0xf8], ecx
add dword [ebp - 0x120], 0x80ba
xor edx, dword [ebp - 0x140]
xor edi, dword [ebp - 0xec]
cmp dword [ebp - 0x13c], 0xb01c
mov ecx, dword [ebp - 0x10c]
mov dword [ebp - 0x108], eax
jge 0x419e64
mov eax, dword [ebp - 0x104]
and edi, dword [ebp - 0xf8]
xor eax, edx
add dword [ebp - 0x11c], ecx
add esi, eax
add edi, 0x485e
mov dword [ebp - 0x104], eax
cmp dword [ebp - 0x140], 0x18667
mov eax, dword [ebp - 0x108]
jle 0x419e64
and dword [ebp - 0xfc], 0x88a6
and dword [ebp - 0x100], eax
cmp dword [ebp - 0xec], 0x119d9
jge 0x419e64
mov ecx, dword [ebp - 0x104]
sub esi, 0xad8b
or dword [ebp - 0xf8], ecx
add eax, 0xe1d0
mov ecx, dword [ebp - 0x10c]
sub ebx, 0x5233
and edx, esi
mov dword [ebp - 0x108], eax
cmp esi, 0xe4c0
jge 0x419e64
mov eax, dword [ebp - 0xf0]
and esi, 0x1ff2
xor eax, dword [ebp - 0x114]
sub dword [ebp - 0x120], edi
or eax, 0x12c93
xor dword [ebp - 0xf8], 0xbe62
xor dword [ebp - 0xf0], edx
mov dword [ebp - 0x114], eax
mov eax, dword [ebp - 0x108]
inc dword [ebp - 0xf4]
xor ecx, dword [ebp - 0xf4]
mov dword [ebp - 0x10c], ecx
cmp ebx, 0x65d4
jge 0x419f1c
mov eax, dword [ebp - 0xf4]
xor dword [ebp - 0x104], eax
mov eax, dword [ebp - 0x140]
xor eax, dword [ebp - 0x114]
or edx, dword [ebp - 0x120]
xor ebx, dword [ebp - 0xf8]
and edx, 0xbd4d
mov dword [ebp - 0x140], eax
mov eax, dword [ebp - 0x108]
cmp edi, 0x1005e
jne 0x419f1c
mov ecx, dword [ebp - 0x144]
and dword [ebp - 0x114], ecx
sub eax, dword [ebp - 0x11c]
and dword [ebp - 0xec], 0xc9dc
cmp dword [ebp - 0x100], 0x857f
mov ecx, dword [ebp - 0x10c]
je 0x419f1c
xor dword [ebp - 0x11c], 0x93a2
mov edi, 0x14a9c
xor dword [ebp - 0x114], 0x171fa
sub edi, ecx
mov ecx, dword [ebp - 0x118]
and eax, 0x12e1c
add ecx, 0x5553
add esi, ecx
cmp dword [ebp - 0xf4], 0x249e4
jl 0x419d60
mov eax, dword [ebp - 0xfc]
sub esp, 0xc
add eax, 0x10524
push eax
sub esp, 0xc
call fcn.00401de0
mov esi, dword [ebp - 0x12c]
mov ecx, 0x18108
add esi, dword [ebp - 0x148]
push 0xee47
mov dword [ebp - 0x140], eax
call fcn.00401170
add esp, 0xc
call fcn.00401ea0
xor edx, edx
mov ecx, esi
mov ebx, 0x1639d
call fcn.00416de0
mov esi, dword [ebp - 0x100]
mov dword [ebp - 0x144], eax
lea ecx, [esi - 0x5ed3]
call fcn.00403b50
mov ecx, dword [ebp - 0x11c]
add esp, 0xc
add ecx, 0xfffc0f24
push ecx
push ecx
call fcn.00401980
add esp, 4
call fcn.00401a00
add esp, 0xc
mov dword [ebp - 0x11c], eax
xor ecx, ecx
lea edx, [eax - 0x4f4]
test edx, edx
jle 0x419ff0
cmp dword [ebp - 0x140], 0x17265
jne 0x419fe7
mov eax, 0xffffbca4
xor ebx, ebx
cmp edi, 0x13ede
cmovg ebx, eax
inc ecx
cmp ecx, edx
jl 0x419fd5
jmp 0x419ff0
xor ebx, ebx
nop dword [eax]
mov eax, dword [ebp - 0x10c]
mov edx, dword [ebp - 0xf8]
add eax, 0xffffe085
push eax
lea eax, [ebx + 0x5dc3]
push eax
lea eax, [esi + 0x10a09]
push eax
mov eax, dword [ebp - 0x11c]
lea edx, [edx - 0x1a075]
add eax, 0xc175
push eax
push ecx
call fcn.00402dd0
add esp, 0x14
call fcn.00401fb0
mov eax, dword [ebp - 0x14c]
cmp dword [ebp - 0x144], eax
je 0x41a06a
mov eax, dword [ebp - 0x138]
inc eax
mov dword [ebp - 0x138], eax
cmp eax, dword [ebp - 0x128]
jb 0x419b40
xor eax, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0042698b
mov esp, ebp
pop ebp
ret
push 0xee47
mov ecx, 0x18108
mov dword [ebp - 0x140], 0xc2c4
mov edi, 0x15183
mov dword [ebp - 0x11c], 0x1242d
mov dword [ebp - 0x100], 0x6576
mov ebx, 0x8b0d
mov dword [ebp - 0x10c], 0x131f2
call fcn.00401170
mov esi, eax
add esp, 4
lea eax, [esi - 0xfd9e]
mov dword [ebp - 0x144], eax
test eax, eax
jle 0x41a111
mov ecx, dword [ebp - 0x10c]
mov eax, 0x4d4c
mov edx, dword [ebp - 0x100]
or dword [ebp - 0x11c], ecx
and edx, 0x1569f
or eax, 0x943a
sub ecx, 0xabe5
or ebx, edi
sub dword [ebp - 0x144], 1
jne 0x41a0d1
mov dword [ebp - 0x10c], ecx
mov ecx, 0xed98
mov dword [ebp - 0x100], edx
mov dword [ebp - 0x120], eax
call fcn.00402430
jmp 0x41a144
mov ecx, 0xed98
call fcn.00402430
mov eax, 0x4d4c
mov dword [ebp - 0x11c], 0x1242d
mov dword [ebp - 0x120], eax
mov dword [ebp - 0x100], 0x6576
mov dword [ebp - 0x10c], 0x131f2
push 0xee47
mov ecx, 0x18108
call fcn.00401170
push 0xee47
mov ecx, 0x18108
call fcn.00401170
push 0xee47
mov ecx, 0x18108
call fcn.00401170
mov ecx, dword [ebp - 0x11c]
and ebx, 0x14c64
mov eax, 0xc87e
mov dword [ebp - 0xf8], ebx
add eax, 0xffffa926
mov dword [ebp - 0xec], 0x83cb
or eax, dword [ebp - 0x100]
and ecx, 0x1554d
mov ebx, 0x810a
mov dword [ebp - 0x144], eax
sub dword [ebp - 0x120], ebx
lea eax, [esi + 0x14c64]
xor ecx, 0x8432
mov dword [ebp - 0x104], 0x139ff
add esp, 0xc
mov dword [ebp - 0x11c], ecx
mov dword [ebp - 0xf4], eax
cmp ecx, 0x126fe
jae 0x41a1fb
and dword [ebp - 0xf8], 0x83cb
sub dword [ebp - 0x10c], 0x19377
sub esi, 0xed48
mov ecx, dword [ebp - 0x124]
sub esp, 8
mov eax, dword [ebp - 0x138]
mov dword [ebp - 0x108], 0x589c
movzx eax, word [ecx + eax*2]
mov dword [ebp - 0xf0], eax
call fcn.004023e0
mov ecx, dword [ebp - 0x120]
add esp, 8
mov dword [ebp - 0x114], eax
or ebx, ecx
mov eax, dword [ebp - 0x144]
mov edx, 0x8433
add dword [ebp - 0x10c], eax
mov eax, dword [ebp - 0xf8]
nop dword [eax + eax]
inc dword [ebp - 0x114]
inc edx
and dword [ebp - 0x140], 0x3125
add eax, 0x8225
xor dword [ebp - 0x108], 0x1ad8
sub esi, 0xee4
sub edi, 0x6d1b
mov dword [ebp - 0xf8], eax
or edx, ecx
cmp esi, 0x6681
jne 0x41a352
add dword [ebp - 0xf4], 0x83cb
mov esi, edx
add dword [ebp - 0x10c], 0x13c6d
or esi, 0x6681
and edi, dword [ebp - 0x100]
cmp dword [ebp - 0x104], 0xda9f
mov ecx, dword [ebp - 0x120]
jle 0x41a352
mov ecx, dword [ebp - 0x140]
add ebx, 0x19377
sub dword [ebp - 0xf4], ecx
xor dword [ebp - 0x144], 0xa777
cmp dword [ebp - 0x108], 0x834d
mov ecx, dword [ebp - 0x120]
jle 0x41a352
mov eax, dword [ebp - 0x104]
and esi, edi
add eax, dword [ebp - 0xf4]
and ebx, 0x471c
mov dword [ebp - 0x104], eax
mov eax, dword [ebp - 0xf8]
cmp edx, 0xc080
je 0x41a352
add dword [ebp - 0x100], edi
or esi, 0xbad
sub dword [ebp - 0xf4], 0x83cb
and edi, ebx
cmp dword [ebp - 0x144], 0x10b6f
jne 0x41a352
and esi, 0x5dee
add edi, 0x14a00
cmp dword [ebp - 0x114], 0x38c7
jl 0x41a250
mov eax, dword [ebp - 0x10c]
or ebx, 0xfffe4876
mov esi, dword [ebp - 0xf8]
mov dword [ebp - 0x14c], edx
cmp eax, 0xbeff
jle 0x41a3b3
add esi, dword [ebp - 0x144]
mov dword [ebp - 0xec], 0xf7fb
cmp esi, 0x470f
je 0x41a3b3
add ebx, 0x801e
cmp edx, 0x406a
je 0x41a3b3
or ecx, 0xb28d
mov dword [ebp - 0x120], ecx
add eax, 0x771e
push eax
push 0x14137
push 0xa4e
push 0x5663
call fcn.00402540
mov ecx, dword [ebp - 0x11c]
lea eax, [edi + 0x133]
add esp, 0x10
add ecx, 0xfffedbd9
sub ecx, eax
push 0x5ad4
push ecx
push 0x3ae9
push ecx
push 0x7a
lea eax, [ecx + 0x19638]
push eax
push ecx
call fcn.004013a0
push 0xee47
mov ecx, 0x18108
call fcn.00401170
add esp, 0x20
lea eax, [edi - 0xe3ee]
push 0x5ad4
push ecx
push 0x3ae9
push ecx
push eax
push 0x11df5
push ecx
call fcn.004013a0
push 0xee47
mov ecx, 0x18108
call fcn.00401170
mov eax, dword [ebp - 0x120]
add esp, 0x20
mov ecx, dword [ebp - 0x14c]
mov edx, dword [ebp - 0x144]
inc eax
cmp edx, 0xf375
jge 0x41a486
mov edi, dword [ebp - 0xec]
xor ebx, ecx
cmp edi, 0x1d50
je 0x41a486
cmp ebx, 0x2f73
jle 0x41a486
and esi, 0x99de
add edi, 0x127f7
mov dword [ebp - 0xec], edi
cmp eax, 0xfefe
jl 0x41a453
mov eax, dword [ebp - 0x110]
push ecx
mov dword [ebp - 0xf8], esi
mov esi, dword [ebp - 0xf0]
mov edx, dword [ebp - 0xf8]
push 0x1530e
push 0x569e
mov esi, dword [eax + esi*4]
add edx, 0xfffe43bb
push ecx
call fcn.00401d50
mov ecx, 0x2249
call fcn.00401690
add esp, 0xc
mov edx, 0x839a
push 0x1530e
push 0x569e
push ecx
call fcn.00401d50
add esi, dword [ebp - 0x148]
mov ecx, 0x18108
push 0xee47
call fcn.00401170
push 0xee47
mov ecx, 0x18108
call fcn.00401170
push 0xee47
mov ecx, 0x18108
call fcn.00401170
push 0xee47
mov ecx, 0x18108
call fcn.00401170
mov ecx, dword [ebp - 4]
add esp, 0x20
mov eax, esi
xor ecx, ebp
pop edi
pop esi
pop ebx
call fcn.0042698b
mov esp, ebp
pop ebp
ret