Function at 0x10048919
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x10078f87
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
push ecx
sub esp, 0x324
push ebx
push esi
push edi
mov dword [ebp - 0x10], esp
movzx eax, byte [ebp + 0x10]
test eax, eax
je 0x1004994c
mov eax, dword [ebp + 0x20]
mov dword [ebp - 0x150], eax
lea eax, [ebp + 0x30]
mov dword [ebp - 0x1d0], eax
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x194], eax
mov eax, dword [ebp + 0x14]
mov dword [ebp - 0x1f4], eax
lea eax, [ebp + 8]
mov dword [ebp - 0x184], eax
mov eax, dword [ebp - 0x184]
movzx eax, byte [eax]
test eax, eax
je 0x100498e4
mov eax, dword [ebp - 0x1d0]
mov dword [ebp - 0x1e4], eax
mov eax, dword [ebp - 0x150]
mov dword [ebp - 0x204], eax
mov byte [ebp - 0xa8], 0xa
mov byte [ebp - 0xa7], 4
mov byte [ebp - 0xa6], 0xe
mov byte [ebp - 0xa5], 4
mov byte [ebp - 0xa4], 0xb
mov byte [ebp - 0xa3], 3
mov byte [ebp - 0xa2], 0xf
mov byte [ebp - 0xa1], 0x1c
mov byte [ebp - 0xa0], 0x18
mov byte [ebp - 0x9f], 9
mov byte [ebp - 0x9e], 8
mov byte [ebp - 0x9d], 0x10
mov byte [ebp - 0x9c], 9
mov byte [ebp - 0x9b], 3
mov byte [ebp - 0x9a], 0x17
mov byte [ebp - 0x99], 0x12
mov byte [ebp - 0x98], 0x13
mov byte [ebp - 0x97], 0xc
mov byte [ebp - 0x96], 6
mov byte [ebp - 0x95], 0x13
mov byte [ebp - 0x94], 5
mov byte [ebp - 0x93], 1
mov byte [ebp - 0x92], 4
mov byte [ebp - 0x91], 0x30
mov byte [ebp - 0x90], 0x3a
mov byte [ebp - 0x8f], 0xa0
mov byte [ebp - 0x8e], 0xde
mov byte [ebp - 0x8d], 0xc
mov byte [ebp - 0x8c], 0xb
mov byte [ebp - 0x8b], 0x12
mov byte [ebp - 0x8a], 0x1e
mov byte [ebp - 0x89], 7
mov byte [ebp - 0x88], 0x1b
mov byte [ebp - 0x87], 0x10
mov byte [ebp - 0x86], 0x19
mov byte [ebp - 0x85], 0xd
mov byte [ebp - 0x84], 0x1f
mov byte [ebp - 0x83], 4
mov byte [ebp - 0x82], 0xb
mov byte [ebp - 0x81], 0x15
mov byte [ebp - 0x80], 0x13
mov byte [ebp - 0x7f], 2
mov byte [ebp - 0x7e], 0x15
mov byte [ebp - 0x7d], 0
mov byte [ebp - 0x7c], 2
mov byte [ebp - 0x7b], 1
mov byte [ebp - 0x7a], 3
mov byte [ebp - 0x79], 3
mov byte [ebp - 0x78], 6
mov byte [ebp - 0x77], 0x11
mov byte [ebp - 0x76], 0x16
mov byte [ebp - 0x75], 0x19
mov byte [ebp - 0x74], 8
mov byte [ebp - 0x73], 0x14
mov byte [ebp - 0x72], 0xf
mov byte [ebp - 0x71], 0x16
mov byte [ebp - 0x70], 2
mov dword [ebp - 0x234], 0xfffffffa
mov dword [ebp - 0x230], 0xfffffffa
mov dword [ebp - 0x22c], 0xfffffffa
mov dword [ebp - 0x228], 0xfffffffa
mov dword [ebp - 0x1c], 0x8e97eede
mov dword [ebp - 0x180], 0x7fa3dfad
mov dword [ebp - 0x1c], 0
jmp 0x10048b45
mov eax, dword [ebp - 0x1c]
inc eax
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 3
jg 0x10048d73
mov dword [ebp - 0xc8], 0xd49598aa
mov dword [ebp - 0x44], 0x966ef3b0
mov dword [ebp - 0x164], 0x4c01f903
mov eax, dword [ebp - 0x1c]
cmp dword [ebp + eax*4 - 0x234], 0
je 0x10048bb3
mov dword [ebp - 0x15c], 0xd271
lea eax, [ebp - 0x44]
push eax
push 0
lea eax, [ebp - 0xc8]
push eax
lea eax, [ebp - 0x180]
push eax
push 0x6006
lea eax, [ebp - 0x15c]
push eax
push 0x4d49
call fcn.10049cea
add esp, 0x1c
jmp 0x10048d6e
mov dword [ebp - 0xb4], 1
mov dword [ebp - 0x188], 0x6a9bebb6
push 4
pop eax
imul eax, eax, 0
cmp dword [ebp + eax - 0x234], 0
je 0x10048bde
cmp dword [ebp - 0xb4], 0
mov eax, 0xffff
cmp eax, 1
jae 0x10048bf4
mov dword [ebp - 0xcc], 1
jmp 0x10048bfb
and dword [ebp - 0xcc], 0
mov eax, dword [ebp - 0x1c]
imul eax, dword [ebp - 0xcc]
cmp eax, dword [ebp - 0x188]
jle 0x10048c19
mov dword [ebp - 0x13c], 1
jmp 0x10048c20
and dword [ebp - 0x13c], 0
mov eax, dword [ebp - 0x44]
cmp dword [ebp - 0x13c], eax
jl 0x10048c37
mov dword [ebp - 0x128], 1
jmp 0x10048c3e
and dword [ebp - 0x128], 0
mov eax, dword [ebp - 0x128]
mov dword [ebp - 0x44], eax
mov eax, dword [ebp - 0xc8]
cmp dword [ebp - 0x44], eax
jne 0x10048c5e
mov dword [ebp - 0xd8], 1
jmp 0x10048c65
and dword [ebp - 0xd8], 0
cmp dword [ebp - 0xd8], 0
jb 0x10048c7a
mov dword [ebp - 0x110], 1
jmp 0x10048c81
and dword [ebp - 0x110], 0
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp + eax*4 - 0x234]
cmp dword [ebp - 0x110], eax
jl 0x10048c9f
mov dword [ebp - 0xe0], 1
jmp 0x10048ca6
and dword [ebp - 0xe0], 0
mov eax, dword [ebp - 0xc8]
cmp dword [ebp - 0xe0], eax
je 0x10048cc0
mov dword [ebp - 0x138], 1
jmp 0x10048cc7
and dword [ebp - 0x138], 0
mov eax, dword [ebp - 0x1c]
cmp dword [ebp - 0x138], eax
jl 0x10048cde
mov dword [ebp - 0xe8], 1
jmp 0x10048ce5
and dword [ebp - 0xe8], 0
cmp dword [ebp - 0xe8], 0xf725dc8f
jae 0x10048cfd
mov dword [ebp - 0x118], 1
jmp 0x10048d04
and dword [ebp - 0x118], 0
mov eax, dword [ebp - 0xb4]
cmp dword [ebp - 0x118], eax
jne 0x10048d1e
mov dword [ebp - 0xf0], 1
jmp 0x10048d25
and dword [ebp - 0xf0], 0
mov eax, dword [ebp - 0xb4]
cmp dword [ebp - 0xf0], eax
jge 0x10048d3f
mov dword [ebp - 0x130], 1
jmp 0x10048d46
and dword [ebp - 0x130], 0
cmp dword [ebp - 0x130], 1
jne 0x10048d5b
mov dword [ebp - 0xf8], 1
jmp 0x10048d62
and dword [ebp - 0xf8], 0
mov eax, dword [ebp - 0xf8]
mov dword [ebp - 0x164], eax
jmp 0x10048b3e
xor eax, eax
inc eax
shl eax, 0
movzx eax, byte [ebp + eax - 0xa8]
or eax, 0x6f
xor ecx, ecx
inc ecx
shl ecx, 0
movzx ecx, byte [ebp + ecx - 0xa8]
and ecx, 0x6f
sub eax, ecx
xor ecx, ecx
inc ecx
imul ecx, ecx, 0
movzx ecx, byte [ebp + ecx - 0xa8]
mov byte [ebp + ecx - 0x2a4], al
mov dword [ebp - 0x14], 2
and dword [ebp - 0x60], 0
jmp 0x10048dc1
mov eax, dword [ebp - 0x14]
inc eax
inc eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 0x39
jae 0x10048e9c
xor eax, eax
inc eax
imul eax, eax, 0
movzx eax, byte [ebp + eax - 0xa8]
lea eax, [eax + eax + 2]
cmp dword [ebp - 0x14], eax
jne 0x10048e08
mov eax, dword [ebp - 0x14]
movzx eax, byte [ebp + eax - 0xa8]
inc eax
mov dword [ebp - 0x60], eax
mov eax, dword [ebp - 0x14]
movzx eax, byte [ebp + eax - 0xa8]
mov ecx, dword [ebp - 0x14]
lea eax, [ecx + eax - 1]
mov dword [ebp - 0x14], eax
jmp 0x10048db9
mov eax, dword [ebp - 0x14]
movzx eax, byte [ebp + eax - 0xa7]
mov ecx, dword [ebp - 0x14]
sub ecx, dword [ebp - 0x60]
movzx ecx, byte [ebp + ecx - 0xaa]
movsx ecx, byte [ebp + ecx - 0x2a4]
or eax, ecx
mov ecx, dword [ebp - 0x14]
movzx ecx, byte [ebp + ecx - 0xa7]
mov edx, dword [ebp - 0x14]
sub edx, dword [ebp - 0x60]
movzx edx, byte [ebp + edx - 0xaa]
movsx edx, byte [ebp + edx - 0x2a4]
and ecx, edx
sub eax, ecx
mov ecx, dword [ebp - 0x14]
movzx ecx, byte [ebp + ecx - 0xa8]
mov byte [ebp + ecx - 0x2a4], al
push 0x7107
push 0x7e95
push 0x5fb3
push 0
push 0x4dd6
lea eax, [ebp - 0x60]
push eax
push 0x259b
push 0x917
push 0
push 0xdc2
push 1
call fcn.10048919
add esp, 0x2c
jmp 0x10048db9
xor eax, eax
inc eax
imul eax, eax, 0x1a
mov byte [ebp + eax - 0x2a4], 0
mov dword [ebp - 0x190], 0xfbb4ebb0
mov dword [ebp - 0x16c], 0xfffffff7
push 3
lea ecx, [ebp - 0x278]
call fcn.10025ddd
and dword [ebp - 4], 0
mov dword [ebp - 0x174], 0xfffffff6
mov dword [ebp - 0x198], 1
push 0x4ae5
push 0x361a
push 0x593
push 1
push 0xb10
push 0x728f
push 0x2a53
lea eax, [ebp - 0x278]
push eax
push 1
lea eax, [ebp - 0x2a8]
push eax
push 0
call fcn.10048919
add esp, 0x2c
mov byte [ebp - 0x1d], 0
push 0x25
lea eax, [ebp - 0x1d]
push eax
push 0
push 0x2e43
push 0x6018
push 0x7518
push 0x6802
push 1
push 0x31f4
push 0x7447
push 0x431d
push 0
push 0x5c28
push 0x52c5
call fcn.10049fdf
add esp, 0x38
lea eax, [ebp - 0x190]
push eax
push 0x6a52
push 0
lea eax, [ebp - 0x278]
push eax
push 0x4189
lea eax, [ebp - 0x16c]
push eax
lea eax, [ebp - 0x198]
push eax
push 0x2ebd
lea eax, [ebp - 0x174]
push eax
call fcn.10049c40
add esp, 0x24
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x278]
call fcn.10025e3f
lea eax, [ebp - 0x2a4]
push eax
lea ecx, [ebp - 0x2ec]
call fcn.100439bc
mov dword [ebp - 4], 1
and dword [ebp - 0x4c], 0
jmp 0x10048fd3
mov eax, dword [ebp - 0x4c]
inc eax
mov dword [ebp - 0x4c], eax
cmp dword [ebp - 0x4c], 0x1b
jae 0x10048fe6
mov eax, dword [ebp - 0x4c]
mov byte [ebp + eax - 0x2a4], 0
jmp 0x10048fcc
mov dword [ebp - 0x26c], 3
mov dword [ebp - 0x268], 3
mov dword [ebp - 0x264], 3
mov dword [ebp - 0x260], 3
lea ecx, [ebp - 0xa9]
call fcn.10025e6a
push eax
lea eax, [ebp - 0x25c]
push eax
lea eax, [ebp - 0x26c]
push eax
lea ecx, [ebp - 0x304]
call fcn.10025e6d
push dword [eax + 4]
push dword [eax]
lea ecx, [ebp - 0x1f0]
call fcn.10025e19
mov byte [ebp - 4], 2
push 1
lea ecx, [ebp - 0x14c]
call fcn.10025ddd
mov byte [ebp - 4], 3
mov dword [ebp - 0x100], 1
mov dword [ebp - 0x2d4], 0xfcc9
mov dword [ebp - 0x6c], 0
jmp 0x1004907c
mov eax, dword [ebp - 0x6c]
inc eax
mov dword [ebp - 0x6c], eax
cmp dword [ebp - 0x6c], 1
jge 0x10049095
push dword [ebp - 0x6c]
lea ecx, [ebp - 0x14c]
call fcn.10025e5b
or dword [eax], 0xffffffff
jmp 0x10049075
push 0
lea ecx, [ebp - 0x14c]
call fcn.10025e5b
and dword [eax], 0
jmp 0x100490cb
push 0
lea ecx, [ebp - 0x14c]
call fcn.10025e5b
mov dword [ebp - 0x120], eax
mov eax, dword [ebp - 0x120]
mov eax, dword [eax]
inc eax
mov ecx, dword [ebp - 0x120]
mov dword [ecx], eax
push 0
lea ecx, [ebp - 0x14c]
call fcn.10025e5b
cmp dword [eax], 3
jg 0x100495fc
mov dword [ebp - 0x24], 0xfffffff9
mov dword [ebp - 0x34], 0x5ef8
mov dword [ebp - 0xbc], 0x314e7649
mov dword [ebp - 0x224], 0x64f6b903
mov dword [ebp - 0x220], 0x64f6b903
mov dword [ebp - 0x21c], 0x64f6b903
mov dword [ebp - 0x218], 0x64f6b903
mov dword [ebp - 0x2c8], 0x704d9fab
mov dword [ebp - 0x24], 3
jmp 0x1004913b
mov eax, dword [ebp - 0x24]
dec eax
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 0
jl 0x10049594
mov dword [ebp - 0x2c], 0x144ad72d
mov dword [ebp - 0xc4], 0xbe02189f
push 1
lea ecx, [ebp - 0x258]
call fcn.10025ddd
mov byte [ebp - 4], 4
mov dword [ebp - 0x1a8], 0xffffffff
mov dword [ebp - 0x3c], 0
jmp 0x10049181
mov eax, dword [ebp - 0x3c]
inc eax
mov dword [ebp - 0x3c], eax
cmp dword [ebp - 0x3c], 1
jge 0x1004919d
push dword [ebp - 0x3c]
lea ecx, [ebp - 0x258]
call fcn.10025e5b
mov dword [eax], 0xa5bed857
jmp 0x1004917a
mov dword [ebp - 0x2c], 0
jmp 0x100491ad
mov eax, dword [ebp - 0x2c]
inc eax
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x2c], 3
jg 0x100494f6
mov dword [ebp - 0xdc], 1
mov dword [ebp - 0xfc], 0xfffffffa
mov dword [ebp - 0x1a0], 0xdac7a8cf
push 2
lea ecx, [ebp - 0x1e0]
call fcn.10025ddd
mov byte [ebp - 4], 5
push 3
lea ecx, [ebp - 0x240]
call fcn.10025ddd
mov byte [ebp - 4], 6
lea eax, [ebp - 0x1e0]
push eax
push 0x1a22
lea eax, [ebp - 0x18]
push eax
push 0x1304
push 0
call fcn.10049e91
add esp, 0x14
mov dword [ebp - 0x18], 0
jmp 0x10049226
mov eax, dword [ebp - 0x18]
inc eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 2
jge 0x1004923c
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x1bc], 4
jmp 0x1004921f
mov dword [ebp - 0x18], 0
jmp 0x1004924c
mov eax, dword [ebp - 0x18]
inc eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 3
jge 0x10049265
push dword [ebp - 0x18]
lea ecx, [ebp - 0x240]
call fcn.10025e5b
and dword [eax], 0
jmp 0x10049245
push 0
lea eax, [ebp - 0x100]
push eax
push 0x3ae8
lea eax, [ebp - 0xc4]
push eax
lea eax, [ebp - 0x1f0]
push eax
lea eax, [ebp - 0xdc]
push eax
lea eax, [ebp - 0xfc]
push eax
lea eax, [ebp - 0x2c]
push eax
lea eax, [ebp - 0x1a0]
push eax
push 0x31b
lea eax, [ebp - 0x34]
push eax
lea eax, [ebp - 0x14c]
push eax
call fcn.1004ab1f
add esp, 0x30
mov eax, dword [ebp - 0x100]
mov dword [ebp - 0x2d0], eax
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x1bc]
mov dword [ebp - 0x17c], eax
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x1bc]
dec eax
push 4
pop ecx
shl ecx, 0
mov dword [ebp + ecx - 0x1bc], eax
cmp dword [ebp - 0x17c], 0xfffe
je 0x10049304
mov dword [ebp - 0xec], 1
jmp 0x1004930b
and dword [ebp - 0xec], 0
push 1
lea ecx, [ebp - 0x1f0]
call fcn.10025e5b
mov esi, eax
push 0
lea ecx, [ebp - 0x240]
call fcn.10025e5b
mov ecx, dword [esi]
cmp ecx, dword [eax]
jl 0x10049339
mov dword [ebp - 0x140], 1
jmp 0x10049340
and dword [ebp - 0x140], 0
cmp dword [ebp - 0x140], 0xac04bb91
jbe 0x10049358
mov dword [ebp - 0x108], 1
jmp 0x1004935f
and dword [ebp - 0x108], 0
mov eax, dword [ebp - 0x108]
sub eax, dword [ebp - 0x1a8]
mov dword [ebp - 0xd0], eax
push 2
lea ecx, [ebp - 0x240]
call fcn.10025e5b
mov ecx, dword [ebp - 0xd0]
mov dword [eax], ecx
push 1
lea ecx, [ebp - 0x1e0]
call fcn.10025e5b
mov ecx, dword [ebp - 0xd0]
sub ecx, dword [eax]
cmp ecx, dword [ebp - 0xc4]
jl 0x100493af
mov dword [ebp - 0xd4], 1
jmp 0x100493b6
and dword [ebp - 0xd4], 0
push 4
pop eax
imul eax, eax, 3
mov eax, dword [ebp + eax - 0x224]
imul eax, dword [ebp - 0xd4]
test eax, eax
je 0x100493ec
push 1
lea ecx, [ebp - 0x1e0]
call fcn.10025e5b
cmp dword [eax], 0
je 0x100493ec
mov dword [ebp - 0x1b0], 1
jmp 0x100493f3
and dword [ebp - 0x1b0], 0
push 1
lea ecx, [ebp - 0x1e0]
call fcn.10025e5b
mov dword [ebp - 0xbc], 4
mov eax, dword [ebp - 0xbc]
add eax, dword [ebp - 0xdc]
imul eax, eax, 0xffff
push 4
pop ecx
shl ecx, 0
cmp eax, dword [ebp + ecx - 0x224]
jl 0x10049437
mov dword [ebp - 0xe4], 1
jmp 0x1004943e
and dword [ebp - 0xe4], 0
cmp dword [ebp - 0xe4], 7
jae 0x10049453
mov dword [ebp - 0xf4], 1
jmp 0x1004945a
and dword [ebp - 0xf4], 0
mov eax, dword [ebp - 0xec]
cmp eax, dword [ebp - 0xf4]
jge 0x10049486
push 0
lea ecx, [ebp - 0x258]
call fcn.10025e5b
cmp dword [eax], 0
je 0x10049486
mov dword [ebp - 0x104], 1
jmp 0x1004948d
and dword [ebp - 0x104], 0
mov eax, dword [ebp - 0xfc]
imul eax, dword [ebp - 0x104]
test eax, eax
je 0x100494b3
mov eax, 0xffff
test eax, eax
je 0x100494b3
mov dword [ebp - 0x10c], 1
jmp 0x100494ba
and dword [ebp - 0x10c], 0
mov eax, dword [ebp - 0xc4]
sub eax, dword [ebp - 0x10c]
push 4
pop ecx
shl ecx, 0
mov dword [ebp + ecx - 0x224], eax
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x240]
call fcn.10025e3f
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x1e0]
call fcn.10025e3f
jmp 0x100491a6
push 4
pop eax
shl eax, 0
cmp dword [ebp + eax - 0x224], 1
jg 0x10049512
mov dword [ebp - 0x114], 1
jmp 0x10049519
and dword [ebp - 0x114], 0
push 0
lea ecx, [ebp - 0x258]
call fcn.10025e5b
mov ecx, dword [ebp - 0x114]
cmp ecx, dword [eax]
jg 0x1004953c
mov dword [ebp - 0x11c], 1
jmp 0x10049543
and dword [ebp - 0x11c], 0
mov eax, dword [ebp - 0x11c]
sub eax, dword [ebp - 0x24]
jne 0x10049560
mov eax, 0x4219042f
test eax, eax
jne 0x10049560
and dword [ebp - 0x124], 0
jmp 0x1004956a
mov dword [ebp - 0x124], 1
push dword [ebp - 0x24]
lea ecx, [ebp - 0x1f0]
call fcn.10025e5b
mov ecx, dword [ebp - 0x124]
mov dword [eax], ecx
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x258]
call fcn.10025e3f
jmp 0x10049134
mov dword [ebp - 0x34], 0
jmp 0x100495a4
mov eax, dword [ebp - 0x34]
inc eax
mov dword [ebp - 0x34], eax
cmp dword [ebp - 0x34], 3
jg 0x100495f7
lea eax, [ebp - 0x1f0]
push eax
push 0x5f90
push 1
lea eax, [ebp - 0x14c]
push eax
lea eax, [ebp - 0xbc]
push eax
push 0x4d9d
push 0x48c5
push 1
push 0x7afa
push 0x4dd4
push 0x76a5
push 0
push 0xf26
push 0x44c6
call fcn.10049fdf
add esp, 0x38
jmp 0x1004959d
jmp 0x100490a7
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x14c]
call fcn.10025e3f
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x1f0]
call fcn.10025e3f
push 0x10007665
lea ecx, [ebp - 0x2c0]
call fcn.100439bc
mov byte [ebp - 4], 7
mov dword [ebp - 0xb8], 0x5baf43b
mov dword [ebp - 0xc0], 0x210ec320
cmp dword [ebp - 0xb8], 0
je 0x1004969f
mov dword [ebp - 0x68], 0
jmp 0x1004965b
mov eax, dword [ebp - 0x68]
inc eax
mov dword [ebp - 0x68], eax
cmp dword [ebp - 0x68], 4
jge 0x10049671
mov eax, dword [ebp - 0x68]
mov dword [ebp + eax*4 - 0x2fc], 0
jmp 0x10049654
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x2fc]
dec eax
push 4
pop ecx
shl ecx, 0
mov dword [ebp + ecx - 0x2fc], eax
push 0
push 0x750
call fcn.1004a8ec
pop ecx
pop ecx
jmp 0x10049746
mov dword [ebp - 0x5c], 0x21f9
mov dword [ebp - 0x288], 0x7249aaed
mov dword [ebp - 0x284], 0x7249aaed
mov dword [ebp - 0x280], 0x7249aaed
mov dword [ebp - 0x27c], 0x7249aaed
mov eax, dword [ebp - 0x5c]
mov dword [ebp - 0x2c4], eax
mov eax, dword [ebp - 0x5c]
mov dword [ebp - 0x2cc], eax
mov eax, 0x844a
sub eax, dword [ebp - 0x5c]
jmp 0x100496f6
and dword [ebp - 0xb0], 0
push 4
pop eax
shl eax, 0
mov ecx, dword [ebp - 0xb0]
mov dword [ebp + eax - 0x288], ecx
mov eax, dword [ebp - 0xb0]
mov dword [ebp - 0xb8], eax
mov eax, dword [ebp - 0x5c]
cmp dword [ebp - 0xb8], eax
jl 0x10049733
mov dword [ebp - 0x12c], 1
jmp 0x1004973a
and dword [ebp - 0x12c], 0
mov eax, dword [ebp - 0x12c]
mov dword [ebp - 0xc0], eax
mov eax, dword [ebp - 0xc0]
mov dword [ebp - 0xc0], eax
lea ecx, [ebp - 0x2c0]
call fcn.10025c03
mov ecx, dword [ebp - 0x1e4]
cmp eax, dword [ecx]
je 0x100497cc
push 0x33e4
lea eax, [ebp - 0x2ec]
push eax
push 0
lea eax, [ebp - 0x18c]
push eax
push 0x6116
push 0x7399
call fcn.10049d18
add esp, 0x18
push 0x289
lea eax, [ebp - 0x18c]
push eax
lea eax, [ebp - 0x2ec]
push eax
push 1
push 0x5e5a
push 0x5f86
lea eax, [ebp - 0x2c0]
push eax
push 0x3947
push 0
push 0x7ecb
push 1
call fcn.10048919
add esp, 0x2c
jmp 0x10049752
mov dword [ebp - 0x64], 0x97f6af11
mov dword [ebp - 0x30], 0x75c19c5a
mov dword [ebp - 0x28], 0x3f46
mov dword [ebp - 0x64], 0xfffffffe
jmp 0x100497f1
mov eax, dword [ebp - 0x64]
dec eax
mov dword [ebp - 0x64], eax
cmp dword [ebp - 0x64], 0xfffffff1
jle 0x1004988f
mov dword [ebp - 0x54], 0
jmp 0x1004980b
mov eax, dword [ebp - 0x54]
inc eax
mov dword [ebp - 0x54], eax
cmp dword [ebp - 0x54], 3
jge 0x10049821
mov eax, dword [ebp - 0x54]
mov dword [ebp + eax*4 - 0x24c], 0xffffffff
jmp 0x10049804
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x24c]
dec eax
push 4
pop ecx
imul ecx, ecx, 0
mov dword [ebp + ecx - 0x24c], eax
mov dword [ebp - 0x30], 0
jmp 0x1004984c
mov eax, dword [ebp - 0x30]
inc eax
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 0x16
jg 0x1004988a
mov dword [ebp - 0x28], 2
jmp 0x10049862
mov eax, dword [ebp - 0x28]
dec eax
mov dword [ebp - 0x28], eax
cmp dword [ebp - 0x28], 0
jl 0x10049888
push 4
pop eax
shl eax, 1
mov ecx, dword [ebp - 0x28]
mov eax, dword [ebp + eax - 0x24c]
mov dword [ebp + ecx*4 - 0x24c], eax
cmp dword [ebp - 0x30], 0
je 0x10049886
jmp 0x1004985b
jmp 0x1004985b
jmp 0x10049845
jmp 0x100497ea
lea eax, [ebp - 0x2c0]
push eax
mov ecx, dword [ebp - 0x204]
call fcn.1004c9a8
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x2c0]
call fcn.100439df
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2ec]
call fcn.100439df
jmp 0x10049b7c
mov eax, dword [ebp - 0x194]
mov dword [ebp - 0x19c], eax
mov eax, dword [ebp - 0x1f4]
mov dword [ebp - 0x20c], eax
mov eax, dword [ebp - 0x19c]
mov dword [ebp - 0x38], eax
mov eax, dword [ebp - 0x20c]
mov dword [ebp - 0x1a4], eax
mov eax, dword [ebp - 0x38]
mov dword [eax], 0
jmp 0x10049927
mov eax, dword [ebp - 0x38]
mov eax, dword [eax]
inc eax
mov ecx, dword [ebp - 0x38]
mov dword [ecx], eax
mov eax, dword [ebp - 0x38]
cmp dword [eax], 3
jge 0x10049947
mov eax, dword [ebp - 0x38]
push dword [eax]
mov ecx, dword [ebp - 0x1a4]
call fcn.10025e5b
mov dword [eax], 0x592758e9
jmp 0x1004991c
jmp 0x10049b7c
mov eax, dword [ebp + 0x2c]
mov dword [ebp - 0x1c0], eax
mov dword [ebp - 0x134], 0x1cf0
mov dword [ebp - 0x1ac], 0x100085e8
cmp dword [ebp - 0x134], 0x1ebc
jle 0x10049a42
and dword [ebp - 0x58], 0
jmp 0x10049986
mov eax, dword [ebp - 0x58]
inc eax
mov dword [ebp - 0x58], eax
cmp dword [ebp - 0x58], 0x2ab9
jge 0x10049a42
and dword [ebp - 0x40], 0
jmp 0x100499a0
mov eax, dword [ebp - 0x40]
inc eax
mov dword [ebp - 0x40], eax
cmp dword [ebp - 0x40], 0x49dc
jge 0x10049a3d
and dword [ebp - 0x48], 0
jmp 0x100499ba
mov eax, dword [ebp - 0x48]
inc eax
mov dword [ebp - 0x48], eax
cmp dword [ebp - 0x48], 0x343e
jge 0x10049a38
and dword [ebp - 0x50], 0
jmp 0x100499d0
mov eax, dword [ebp - 0x50]
inc eax
mov dword [ebp - 0x50], eax
cmp dword [ebp - 0x50], 0x5d63
jge 0x10049a33
mov eax, dword [ebp - 0x58]
and eax, dword [ebp - 0x40]
mov ecx, dword [ebp - 0x48]
imul ecx, dword [ebp - 0x50]
and eax, ecx
cdq
mov dword [ebp - 0x1c8], eax
mov dword [ebp - 0x1c4], edx
push dword [ebp - 0x1c4]
push dword [ebp - 0x1c8]
lea ecx, [ebp - 0x334]
call fcn.1000a415
pop ecx
pop ecx
mov dword [ebp - 0x214], eax
mov ecx, dword [ebp - 0x214]
call fcn.10025bf8
push eax
call fcn.10060ec6
pop ecx
lea ecx, [ebp - 0x334]
call fcn.10025bda
jmp 0x100499c9
jmp 0x100499b3
jmp 0x10049999
jmp 0x1004997f
mov eax, dword [ebp + 0x1c]
mov dword [ebp - 0x168], eax
mov dword [ebp - 4], 8
cmp dword [ebp - 0x134], 0x19f0
jge 0x10049a6a
push dword [ebp - 0x1ac]
call fcn.10060ec6
pop ecx
jmp 0x10049a86
or dword [ebp - 4], 0xffffffff
jmp 0x10049a90
mov eax, dword [ebp + 0x28]
mov dword [ebp - 0x210], eax
mov eax, dword [ebp + 0x18]
mov dword [ebp - 0x1b4], eax
lea eax, [ebp + 0x24]
mov dword [ebp - 0x200], eax
mov eax, dword [ebp - 0x200]
movzx eax, byte [eax]
test eax, eax
je 0x10049b5b
mov eax, dword [ebp - 0x1b4]
mov dword [ebp - 0x208], eax
mov eax, dword [ebp - 0x210]
mov dword [ebp - 0x1cc], eax
mov eax, dword [ebp - 0x1c0]
mov dword [ebp - 0x1f8], eax
mov eax, dword [ebp - 0x208]
mov dword [ebp - 0x160], eax
mov eax, dword [ebp - 0x1cc]
mov dword [ebp - 0x1fc], eax
mov eax, dword [ebp - 0x1f8]
mov dword [ebp - 0x1d4], eax
push 1
mov eax, dword [ebp - 0x1d4]
push dword [eax]
lea eax, [ebp - 0x31c]
push eax
mov ecx, dword [ebp - 0x1fc]
call fcn.1004ca0b
mov dword [ebp - 0x154], eax
mov eax, dword [ebp - 0x154]
mov dword [ebp - 0x158], eax
mov dword [ebp - 4], 0xa
push dword [ebp - 0x158]
mov ecx, dword [ebp - 0x160]
call fcn.100439e9
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x31c]
call fcn.100439df
jmp 0x10049b7c
mov eax, dword [ebp - 0x168]
mov dword [ebp - 0x170], eax
mov eax, dword [ebp - 0x170]
mov dword [ebp - 0x178], eax
mov eax, dword [ebp - 0x178]
and dword [eax], 0
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret