Function at 0x1003c823
Capabilities:
Inspect section memory permissions

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1006db51
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x3d0
push esi
movzx eax, byte [ebp + 0xc]
test eax, eax
je 0x1003e0ac
mov eax, dword [ebp + 0x18]
mov dword [ebp - 0x274], eax
lea eax, [ebp + 0x10]
mov dword [ebp - 0x21c], eax
mov eax, dword [ebp - 0x21c]
movzx eax, byte [eax]
test eax, eax
je 0x1003c87e
push 0
push 0
push 0
call dword [sym.imp.OLEAUT32.dll_SysFreeString]
jmp 0x1003e0aa
mov eax, dword [ebp - 0x274]
mov dword [ebp - 0x7c], eax
mov dword [ebp - 0xa0], 0xfffffffd
mov dword [ebp - 0x28], 1
mov dword [ebp - 0xe4], 0xb9c279a2
mov eax, dword [ebp - 0x28]
cmp dword [ebp - 0x28], eax
jle 0x1003c8b6
mov dword [ebp - 0x150], 1
jmp 0x1003c8bd
and dword [ebp - 0x150], 0
mov eax, dword [ebp - 0x150]
neg eax
jne 0x1003c8d3
mov dword [ebp - 0xd4], 1
jmp 0x1003c8da
and dword [ebp - 0xd4], 0
mov eax, dword [ebp - 0xa0]
imul eax, dword [ebp - 0xd4]
cmp eax, dword [ebp - 0x28]
jg 0x1003c8f8
mov dword [ebp - 0x1f8], 1
jmp 0x1003c8ff
and dword [ebp - 0x1f8], 0
cmp dword [ebp - 0x1f8], 0x64a9
jne 0x1003c917
mov dword [ebp - 0xd0], 1
jmp 0x1003c91e
and dword [ebp - 0xd0], 0
cmp dword [ebp - 0xd0], 0x8d19c921
jne 0x1003c936
mov dword [ebp - 0x1d4], 1
jmp 0x1003c93d
and dword [ebp - 0x1d4], 0
cmp dword [ebp - 0x1d4], 0
jb 0x1003c952
mov dword [ebp - 0xdc], 1
jmp 0x1003c959
and dword [ebp - 0xdc], 0
cmp dword [ebp - 0xdc], 0x642e
jg 0x1003c971
mov dword [ebp - 0x16c], 1
jmp 0x1003c978
and dword [ebp - 0x16c], 0
mov eax, dword [ebp - 0x16c]
mov dword [ebp - 0xe4], eax
mov eax, dword [ebp - 0x28]
cmp dword [ebp - 0xe4], eax
jge 0x1003c99b
mov dword [ebp - 0x218], 1
jmp 0x1003c9a2
and dword [ebp - 0x218], 0
mov eax, dword [ebp - 0x28]
mov dword [ebp - 0x2e4], eax
mov eax, dword [ebp - 0x28]
add eax, 0x4ea33a4d
cmp eax, dword [ebp - 0x28]
jle 0x1003c9c4
mov dword [ebp - 0x26c], 1
jmp 0x1003c9cb
and dword [ebp - 0x26c], 0
mov eax, dword [ebp - 0xa0]
mov dword [ebp - 0x30c], eax
mov eax, 0x3d21462c
sub eax, dword [ebp - 0x28]
cmp dword [ebp - 0xa0], eax
jl 0x1003c9f3
mov dword [ebp - 0x1b4], 1
jmp 0x1003c9fa
and dword [ebp - 0x1b4], 0
mov eax, dword [ebp - 0x1b4]
neg eax
je 0x1003ca49
push 1
push 0x3143
push 0x2aea
push 0
push 0x64f8
call fcn.1003a44e
add esp, 0x14
mov byte [ebp - 0x3b], 0
push 0xe20
push 0
push 0x4bb2
push 0x1d73
lea eax, [ebp - 0x3b]
push eax
push 0
push 0x3e56
call fcn.1003f248
add esp, 0x1c
jmp 0x1003ca5f
push 0x4279
push 0
push 0x1f87
push 0
call fcn.1003e0ed
add esp, 0x10
mov eax, dword [ebp - 0x7c]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x7c]
mov ecx, dword [ecx]
movzx ecx, word [ecx + 0x14]
lea eax, [eax + ecx + 0x18]
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x94], 0
mov dword [ebp - 0x78], 0x7dcda720
push 1
lea ecx, [ebp - 0xc4]
call fcn.10020d20
and dword [ebp - 4], 0
mov dword [ebp - 0x1f4], 0x7d900d29
mov dword [ebp - 0x58], 0x890f6dae
mov dword [ebp - 0x104], 0xfffffffd
mov dword [ebp - 0x70], 0
jmp 0x1003cac1
mov eax, dword [ebp - 0x70]
inc eax
mov dword [ebp - 0x70], eax
cmp dword [ebp - 0x70], 1
jge 0x1003cadd
push dword [ebp - 0x70]
lea ecx, [ebp - 0xc4]
call fcn.10020de6
mov dword [eax], 0xfffffffe
jmp 0x1003caba
push 0
lea ecx, [ebp - 0xc4]
call fcn.10020de6
cmp dword [eax], 1
jle 0x1003cafb
mov dword [ebp - 0x20c], 1
jmp 0x1003cb02
and dword [ebp - 0x20c], 0
mov eax, dword [ebp - 0x78]
mov dword [ebp - 0x314], eax
mov eax, dword [ebp - 0x94]
mov dword [ebp - 0x78], eax
push 0
lea ecx, [ebp - 0xc4]
call fcn.10020de6
mov eax, dword [ebp - 0x94]
mov dword [ebp - 0x31c], eax
push 0
lea ecx, [ebp - 0xc4]
call fcn.10020de6
cmp dword [eax], 0
je 0x1003cb70
mov byte [ebp - 0x3a], 0
movzx eax, byte [ebp - 0x3a]
test eax, eax
je 0x1003cb6b
push 0x4a5a
push 0x7e60
push 0x19e7
push 0
push 0x325
push 0
call fcn.100444bb
add esp, 0x18
jmp 0x1003ce18
mov dword [ebp - 0x30], 0xfd17ba7d
mov dword [ebp - 0x17c], 0x5ab95dfe
mov dword [ebp - 0x8c], 0
jmp 0x1003cb9a
mov eax, dword [ebp - 0x8c]
inc eax
mov dword [ebp - 0x8c], eax
cmp dword [ebp - 0x8c], 3
jge 0x1003cbb6
mov eax, dword [ebp - 0x8c]
mov dword [ebp + eax*4 - 0x294], 1
jmp 0x1003cb8d
push 4
pop eax
shl eax, 1
push 4
pop ecx
imul ecx, ecx, 0
mov ecx, dword [ebp + ecx - 0x294]
cmp dword [ebp + eax - 0x294], ecx
jle 0x1003cbdd
mov dword [ebp - 0xec], 1
jmp 0x1003cbe4
and dword [ebp - 0xec], 0
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x294]
mov dword [ebp - 0x324], eax
cmp dword [ebp - 0x94], 1
jg 0x1003cc0c
mov dword [ebp - 0x250], 1
jmp 0x1003cc13
and dword [ebp - 0x250], 0
mov eax, dword [ebp - 0x58]
inc eax
mov dword [ebp - 0x58], eax
mov eax, dword [ebp - 0x58]
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x30]
mov dword [ebp - 0x32c], eax
push 0
lea ecx, [ebp - 0xc4]
call fcn.10020de6
mov eax, dword [ebp - 0xec]
sub eax, 0xfffc
jne 0x1003cc4f
mov dword [ebp - 0x174], 1
jmp 0x1003cc56
and dword [ebp - 0x174], 0
cmp dword [ebp - 0x174], 0xfffffff6
jne 0x1003cc6b
mov dword [ebp - 0xf4], 1
jmp 0x1003cc72
and dword [ebp - 0xf4], 0
mov eax, dword [ebp - 0xf4]
mov dword [ebp - 0x1f4], eax
cmp dword [ebp - 0x1f4], 1
jle 0x1003cc99
cmp dword [ebp - 0x58], 0
je 0x1003cc99
mov dword [ebp - 0xfc], 1
jmp 0x1003cca0
and dword [ebp - 0xfc], 0
mov dword [ebp - 0x78], 0
mov esi, dword [ebp - 0x78]
push 0
lea ecx, [ebp - 0xc4]
call fcn.10020de6
mov ecx, dword [ebp - 0xfc]
sub ecx, dword [eax]
add esi, ecx
mov dword [ebp - 0x17c], esi
mov eax, dword [ebp - 0x17c]
mov dword [ebp - 0x104], eax
mov esi, dword [ebp - 0x104]
push 0
lea ecx, [ebp - 0xc4]
call fcn.10020de6
imul esi, dword [eax]
push 4
pop eax
shl eax, 0
cmp esi, dword [ebp + eax - 0x294]
jl 0x1003cd04
mov dword [ebp - 0x1bc], 1
jmp 0x1003cd0b
and dword [ebp - 0x1bc], 0
push 0
lea ecx, [ebp - 0xc4]
call fcn.10020de6
mov ecx, dword [ebp - 0x1bc]
sub ecx, dword [eax]
cmp ecx, 0x52705104
jg 0x1003cd34
mov dword [ebp - 0x220], 1
jmp 0x1003cd3b
and dword [ebp - 0x220], 0
mov eax, dword [ebp - 0x94]
mov dword [ebp - 0x38c], eax
mov eax, 0xf6ec3746
cmp eax, 0x2ec28784
jbe 0x1003cd6c
mov byte [ebp - 0x39], 0
push 0x790c
push 0
lea eax, [ebp - 0x39]
push eax
call fcn.10040420
add esp, 0xc
jmp 0x1003cd99
mov byte [ebp - 0x31], 0
movzx eax, byte [ebp - 0x31]
test eax, eax
je 0x1003cd93
push 0x7ebc
push 0
push 0
push 0x73b5
push 0x74ac
call fcn.1004267e
add esp, 0x14
mov eax, dword [ebp - 0x58]
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x30], 0x10
jmp 0x1003cda9
mov eax, dword [ebp - 0x30]
dec eax
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 0xb
jg 0x1003ce18
mov dword [ebp - 0x80], 0
jmp 0x1003cdbf
mov eax, dword [ebp - 0x80]
inc eax
mov dword [ebp - 0x80], eax
cmp dword [ebp - 0x80], 4
jge 0x1003cdd5
mov eax, dword [ebp - 0x80]
mov dword [ebp + eax*4 - 0x3dc], 1
jmp 0x1003cdb8
mov byte [ebp - 0x3d], 0
push 0x30db
push 0x7e03
push 0x2f49
push 0x956
lea eax, [ebp - 0x3d]
push eax
push 1
push 0
push 1
push 0x5970
call fcn.10047f59
add esp, 0x24
push 4
pop eax
imul eax, eax, 3
cmp dword [ebp + eax - 0x3dc], 0
je 0x1003ce16
jmp 0x1003ce18
jmp 0x1003cda2
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0xc4]
call fcn.10020da4
and dword [ebp - 0xa8], 0
jmp 0x1003ce46
mov eax, dword [ebp - 0xa8]
inc eax
mov dword [ebp - 0xa8], eax
mov eax, dword [ebp - 0x14]
add eax, 0x28
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x7c]
mov eax, dword [eax]
movzx eax, word [eax + 6]
cmp dword [ebp - 0xa8], eax
jge 0x1003e0aa
mov dword [ebp - 0x44], 0xd3df75dc
mov dword [ebp - 0x124], 0xffffffff
mov dword [ebp - 0x340], 0xee85
mov dword [ebp - 0x278], 0x26ed4bca
mov dword [ebp - 0x9c], 0
jmp 0x1003ce99
mov eax, dword [ebp - 0x9c]
inc eax
mov dword [ebp - 0x9c], eax
cmp dword [ebp - 0x9c], 1
jge 0x1003ceb5
mov eax, dword [ebp - 0x9c]
mov dword [ebp + eax*4 - 0x12c], 0x8c007c7b
jmp 0x1003ce8c
mov dword [ebp - 0x44], 0xffffffee
jmp 0x1003cec5
mov eax, dword [ebp - 0x44]
inc eax
mov dword [ebp - 0x44], eax
cmp dword [ebp - 0x44], 0x11
jl 0x1003d155
mov dword [ebp - 0x38], 0xfffffff9
push 3
lea ecx, [ebp - 0x2c0]
call fcn.10020d20
mov dword [ebp - 4], 1
mov dword [ebp - 0x2cc], 0
push 0
push 0x316
push 0x68d2
push 0x120e
lea eax, [ebp - 0x328]
push eax
push 0x4e93
lea eax, [ebp - 0x2c0]
push eax
push 0x30f9
push 0x224c
call fcn.1003ead9
add esp, 0x24
cmp dword [ebp - 0x38], 0
jne 0x1003cf3e
xor eax, eax
inc eax
jne 0x1003cf3e
and dword [ebp - 0x10c], 0
jmp 0x1003cf48
mov dword [ebp - 0x10c], 1
cmp dword [ebp - 0x10c], 0xffffbb2f
jge 0x1003cf60
mov dword [ebp - 0xb4], 1
jmp 0x1003cf67
and dword [ebp - 0xb4], 0
push 4
pop eax
imul eax, eax, 0
mov ecx, dword [ebp - 0xb4]
mov dword [ebp + eax - 0x12c], ecx
mov eax, dword [ebp - 0x44]
cmp eax, dword [ebp - 0xb4]
jge 0x1003cf91
mov dword [ebp - 0x184], 1
jmp 0x1003cf98
and dword [ebp - 0x184], 0
mov eax, dword [ebp - 0x38]
cmp eax, dword [ebp - 0x184]
jle 0x1003cfaf
mov dword [ebp - 0x114], 1
jmp 0x1003cfb6
and dword [ebp - 0x114], 0
cmp dword [ebp - 0x114], 0
ja 0x1003cfcb
mov dword [ebp - 0x1dc], 1
jmp 0x1003cfd2
and dword [ebp - 0x1dc], 0
mov eax, dword [ebp - 0x124]
cmp dword [ebp - 0x1dc], eax
jl 0x1003cfec
mov dword [ebp - 0x11c], 1
jmp 0x1003cff3
and dword [ebp - 0x11c], 0
mov eax, dword [ebp - 0x38]
cmp dword [ebp - 0x11c], eax
jle 0x1003d00a
mov dword [ebp - 0x18c], 1
jmp 0x1003d011
and dword [ebp - 0x18c], 0
mov eax, dword [ebp - 0x44]
cmp dword [ebp - 0x18c], eax
jg 0x1003d028
mov dword [ebp - 0x1c4], 1
jmp 0x1003d02f
and dword [ebp - 0x1c4], 0
mov eax, dword [ebp - 0x124]
cmp dword [ebp - 0x1c4], eax
je 0x1003d059
push 4
pop eax
imul eax, eax, 0
cmp dword [ebp + eax - 0x12c], 0
je 0x1003d059
mov dword [ebp - 0x194], 1
jmp 0x1003d060
and dword [ebp - 0x194], 0
push 1
lea ecx, [ebp - 0x2c0]
call fcn.10020de6
mov ecx, dword [ebp - 0x194]
mov dword [eax], ecx
mov dword [ebp - 0x38], 0
jmp 0x1003d085
mov eax, dword [ebp - 0x38]
inc eax
mov dword [ebp - 0x38], eax
cmp dword [ebp - 0x38], 2
jg 0x1003d141
mov dword [ebp - 0x2d4], 0xfffffffb
push 3
lea ecx, [ebp - 0x33c]
call fcn.10020d20
mov byte [ebp - 4], 2
lea eax, [ebp - 0x370]
push eax
push 0
lea eax, [ebp - 0x33c]
push eax
push 1
push 0x231f
push 1
call fcn.1003a84c
add esp, 0x18
push 1
push 1
push 0x377
lea eax, [ebp - 0x278]
push eax
push 0x4cae
push 0x19eb
push 0xbf5
push 0x46db
push 0
push 0x396e
call fcn.10036b09
add esp, 0x28
mov byte [ebp - 0x29], 0
push 0x300
push 0xa32
push 1
push 0x320d
push 0x71da
lea eax, [ebp - 0x29]
push eax
push 0
push 1
push 0x2945
call fcn.1003688c
add esp, 0x24
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x33c]
call fcn.10020da4
jmp 0x1003d07e
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2c0]
call fcn.10020da4
jmp 0x1003cebe
mov dword [ebp - 0x68], 0x4fc2
mov dword [ebp - 0x5c], 0xcd24
mov dword [ebp - 0x48], 0xffffffff
mov dword [ebp - 0x50], 1
mov dword [ebp - 0x1ec], 1
mov dword [ebp - 0x154], 0xe1734826
mov dword [ebp - 0x260], 1
mov dword [ebp - 0x1c], 0
jmp 0x1003d19f
mov eax, dword [ebp - 0x1c]
inc eax
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 1
jge 0x1003d1b5
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x270], 0xa2955e31
jmp 0x1003d198
mov dword [ebp - 0x1c], 0
jmp 0x1003d1c5
mov eax, dword [ebp - 0x1c]
inc eax
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 3
jge 0x1003d1db
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x2b4], 7
jmp 0x1003d1be
lea eax, [ebp - 0x48]
push eax
push 0
lea eax, [ebp - 0x68]
push eax
lea eax, [ebp - 0x5c]
push eax
call fcn.1003e1b1
add esp, 0x10
mov eax, dword [ebp - 0x48]
mov dword [ebp - 0x2dc], eax
mov eax, dword [ebp - 0x50]
cmp dword [ebp - 0x5c], eax
jge 0x1003d262
mov dword [ebp - 0x88], 0
jmp 0x1003d21b
mov eax, dword [ebp - 0x88]
inc eax
mov dword [ebp - 0x88], eax
cmp dword [ebp - 0x88], 3
jge 0x1003d237
mov eax, dword [ebp - 0x88]
mov dword [ebp + eax*4 - 0x39c], 0x9da97273
jmp 0x1003d20e
mov dword [ebp - 0x50], 0
jmp 0x1003d247
mov eax, dword [ebp - 0x50]
inc eax
mov dword [ebp - 0x50], eax
cmp dword [ebp - 0x50], 3
jge 0x1003d25d
mov eax, dword [ebp - 0x50]
mov dword [ebp + eax*4 - 0x39c], 0
jmp 0x1003d240
jmp 0x1003d569
mov dword [ebp - 0xa4], 1
mov dword [ebp - 0x1e4], 0xe0c0a103
mov dword [ebp - 0x330], 0xdb40437e
mov dword [ebp - 0x144], 0xba2c160e
mov dword [ebp - 0x2c4], 0x5ab883eb
mov dword [ebp - 0x384], 0xfffffff8
mov dword [ebp - 0x2ec], 0xd89c1c50
mov dword [ebp - 0x268], 2
mov dword [ebp - 0x248], 0xdbc0ba88
mov dword [ebp - 0x2f8], 0x7326dc75
mov dword [ebp - 0x288], 0xfffffffe
mov dword [ebp - 0x2f4], 0xfffffffd
mov dword [ebp - 0x228], 0x7ece519c
mov dword [ebp - 0x238], 0xffffffff
mov dword [ebp - 0x90], 0
jmp 0x1003d307
mov eax, dword [ebp - 0x90]
inc eax
mov dword [ebp - 0x90], eax
cmp dword [ebp - 0x90], 3
jge 0x1003d323
mov eax, dword [ebp - 0x90]
mov dword [ebp + eax*4 - 0x3b4], 0xfffffff7
jmp 0x1003d2fa
cmp dword [ebp - 0x68], 0xfffffffc
jne 0x1003d335
mov dword [ebp - 0x134], 1
jmp 0x1003d33c
and dword [ebp - 0x134], 0
mov eax, dword [ebp - 0x228]
cmp dword [ebp - 0x134], eax
jg 0x1003d356
mov dword [ebp - 0x13c], 1
jmp 0x1003d35d
and dword [ebp - 0x13c], 0
mov eax, dword [ebp - 0x1e4]
mov dword [ebp - 0x1ec], eax
mov eax, dword [ebp - 0x1ec]
mov dword [ebp - 0x258], eax
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x2b4]
imul eax, dword [ebp - 0x13c]
mov dword [ebp - 0x230], eax
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x2b4]
inc eax
push 4
pop ecx
shl ecx, 0
mov dword [ebp + ecx - 0x2b4], eax
mov eax, dword [ebp - 0x258]
cmp eax, dword [ebp - 0x230]
jge 0x1003d3c4
mov dword [ebp - 0x19c], 1
jmp 0x1003d3cb
and dword [ebp - 0x19c], 0
mov eax, dword [ebp - 0x68]
mov dword [ebp - 0x2fc], eax
mov eax, dword [ebp - 0x19c]
mov dword [ebp - 0x144], eax
mov eax, dword [ebp - 0x144]
mov dword [ebp - 0x304], eax
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x3b4]
mov dword [ebp - 0x300], eax
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x270]
cmp dword [ebp - 0x238], eax
jle 0x1003d420
mov dword [ebp - 0x1cc], 1
jmp 0x1003d427
and dword [ebp - 0x1cc], 0
mov eax, dword [ebp - 0x1cc]
inc eax
cmp eax, dword [ebp - 0x260]
jl 0x1003d442
mov dword [ebp - 0x240], 1
jmp 0x1003d449
and dword [ebp - 0x240], 0
mov eax, dword [ebp - 0x288]
mov dword [ebp - 0x380], eax
mov eax, dword [ebp - 0x48]
mov dword [ebp - 0x308], eax
cmp dword [ebp - 0x5c], 0xade0
jle 0x1003d473
mov dword [ebp - 0x14c], 1
jmp 0x1003d47a
and dword [ebp - 0x14c], 0
mov eax, dword [ebp - 0x68]
cmp dword [ebp - 0x14c], eax
jg 0x1003d491
mov dword [ebp - 0x1a4], 1
jmp 0x1003d498
and dword [ebp - 0x1a4], 0
mov eax, dword [ebp - 0x1a4]
neg eax
mov dword [ebp - 0x154], eax
cmp dword [ebp - 0x154], 0
cmp dword [ebp - 0x1e4], 0x40bbfb6f
je 0x1003d4c5
mov dword [ebp - 0x15c], 1
jmp 0x1003d4cc
and dword [ebp - 0x15c], 0
mov eax, dword [ebp - 0x248]
cmp dword [ebp - 0x15c], eax
jge 0x1003d4e6
mov dword [ebp - 0x1ac], 1
jmp 0x1003d4ed
and dword [ebp - 0x1ac], 0
mov eax, dword [ebp - 0x48]
cmp dword [ebp - 0x1ac], eax
jge 0x1003d504
mov dword [ebp - 0x164], 1
jmp 0x1003d50b
and dword [ebp - 0x164], 0
mov eax, dword [ebp - 0xa4]
dec eax
mov dword [ebp - 0xa4], eax
mov eax, dword [ebp - 0xa4]
mov eax, dword [ebp - 0x5c]
cmp dword [ebp - 0x268], eax
jne 0x1003d535
mov dword [ebp - 0xcc], 1
jmp 0x1003d53c
and dword [ebp - 0xcc], 0
cmp dword [ebp - 0xcc], 0
jg 0x1003d551
mov dword [ebp - 0xd8], 1
jmp 0x1003d558
and dword [ebp - 0xd8], 0
mov eax, dword [ebp - 0x48]
mov ecx, dword [ebp - 0x5c]
add ecx, dword [ebp - 0xd8]
add eax, ecx
mov dword [ebp - 0x48], eax
mov eax, dword [ebp - 0x14]
mov eax, dword [eax + 0x24]
and eax, 0x20000000
je 0x1003d582
mov dword [ebp - 0xe0], 1
jmp 0x1003d589
and dword [ebp - 0xe0], 0
mov eax, dword [ebp - 0xe0]
mov dword [ebp - 0x24c], eax
mov dword [ebp - 0x98], 0xdf75dcec
mov dword [ebp - 0x350], 0xfffffff8
mov dword [ebp - 0x2a8], 0xad7d711e
mov dword [ebp - 0x2a4], 0xad7d711e
mov dword [ebp - 0x2a0], 0xad7d711e
mov dword [ebp - 0x29c], 0xad7d711e
lea ecx, [ebp - 0xa9]
call fcn.10020e4e
push eax
lea eax, [ebp - 0x298]
push eax
lea eax, [ebp - 0x2a8]
push eax
lea ecx, [ebp - 0x3bc]
call fcn.10020e51
push dword [eax + 4]
push dword [eax]
lea ecx, [ebp - 0x36c]
call fcn.10020d7e
mov dword [ebp - 4], 3
push 2
lea ecx, [ebp - 0x35c]
call fcn.10020d20
mov byte [ebp - 4], 4
mov dword [ebp - 0x214], 0x3337
push 0x37b5
push 0x7c2a
lea eax, [ebp - 0x310]
push eax
push 0x7000
push 0x38d4
push 1
push 0
push 0
lea eax, [ebp - 0x35c]
push eax
call fcn.10047f59
add esp, 0x24
mov dword [ebp - 0x98], 0
jmp 0x1003d671
mov eax, dword [ebp - 0x98]
inc eax
mov dword [ebp - 0x98], eax
cmp dword [ebp - 0x98], 7
jl 0x1003d7cd
mov dword [ebp - 0x6c], 0xa35f394
mov dword [ebp - 0x4c], 1
mov dword [ebp - 0x388], 0xc590f023
push 4
lea ecx, [ebp - 0x34c]
call fcn.10020d20
mov byte [ebp - 4], 5
mov dword [ebp - 0x318], 0xa912e755
push 0x30a9
push 0
push 0
lea eax, [ebp - 0x34c]
push eax
push 0x3899
lea eax, [ebp - 0x360]
push eax
push 0x78a0
call fcn.10034d23
add esp, 0x1c
mov dword [ebp - 0x6c], 0
jmp 0x1003d6ea
mov eax, dword [ebp - 0x6c]
dec eax
mov dword [ebp - 0x6c], eax
cmp dword [ebp - 0x6c], 0xffffffe4
jge 0x1003d774
mov dword [ebp - 0x320], 0xfffffff9
mov dword [ebp - 0x74], 0
jmp 0x1003d70e
mov eax, dword [ebp - 0x74]
inc eax
mov dword [ebp - 0x74], eax
cmp dword [ebp - 0x74], 1
jge 0x1003d724
mov eax, dword [ebp - 0x74]
mov dword [ebp + eax*4 - 0x390], 0xa7b09f59
jmp 0x1003d707
push 0x608d
push 0
push 0x3a96
push 0x2ab3
lea eax, [ebp - 0x4c]
push eax
push 0x2949
push 1
call fcn.1003a184
add esp, 0x1c
push 0x316
lea eax, [ebp - 0x214]
push eax
push 0x3271
push 1
push 1
push 0x5d39
push 0x3ab2
call fcn.10033a84
add esp, 0x1c
jmp 0x1003d6e3
mov dword [ebp - 0x4c], 3
jmp 0x1003d784
mov eax, dword [ebp - 0x4c]
dec eax
mov dword [ebp - 0x4c], eax
cmp dword [ebp - 0x4c], 0
jl 0x1003d7b9
push 0x2b5b
lea eax, [ebp - 0x36c]
push eax
push 1
push 0x31a2
push 0xa2a
push 0x3659
push 1
push 0
lea eax, [ebp - 0x4c]
push eax
call fcn.1003688c
add esp, 0x24
jmp 0x1003d77d
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x34c]
call fcn.10020da4
jmp 0x1003d664
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x35c]
call fcn.10020da4
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x36c]
call fcn.10020da4
mov eax, dword [ebp - 0x14]
mov eax, dword [eax + 0x24]
and eax, 0x40000000
je 0x1003d804
mov dword [ebp - 0xe8], 1
jmp 0x1003d80b
and dword [ebp - 0xe8], 0
mov eax, dword [ebp - 0xe8]
mov dword [ebp - 0x23c], eax
mov dword [ebp - 0x18], 0x6318
mov dword [ebp - 0xb0], 0x23ed15de
mov dword [ebp - 0x20], 0
jmp 0x1003d838
mov eax, dword [ebp - 0x20]
inc eax
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 1
jge 0x1003d84b
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0x54], 0x585b7f3
jmp 0x1003d831
mov dword [ebp - 0x20], 0
jmp 0x1003d85b
mov eax, dword [ebp - 0x20]
inc eax
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 3
jge 0x1003d871
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0x3a8], 0xfffffffe
jmp 0x1003d854
cmp dword [ebp - 0x18], 0
je 0x1003d87b
cmp dword [ebp - 0x18], 0
mov dword [ebp - 0xb0], 1
mov eax, dword [ebp - 0x18]
cmp dword [ebp - 0xb0], eax
jle 0x1003d89c
mov dword [ebp - 0xf0], 1
jmp 0x1003d8a3
and dword [ebp - 0xf0], 0
push 4
pop eax
imul eax, eax, 0
mov ecx, dword [ebp - 0xf0]
mov dword [ebp + eax - 0x54], ecx
mov dword [ebp - 0x18], 0
jmp 0x1003d8c3
mov eax, dword [ebp - 0x18]
dec eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 0
jl 0x1003d96d
mov dword [ebp - 0x100], 0xa2215256
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x18]
mov ecx, dword [ebp + ecx*4 - 0x54]
cmp dword [ebp + eax*4 - 0x54], ecx
jne 0x1003d8f3
mov dword [ebp - 0xf8], 1
jmp 0x1003d8fa
and dword [ebp - 0xf8], 0
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp + eax*4 - 0x54]
cmp eax, dword [ebp - 0xf8]
jle 0x1003d915
mov dword [ebp - 0x210], 1
jmp 0x1003d91c
and dword [ebp - 0x210], 0
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x54]
mov dword [ebp - 0x100], eax
cmp dword [ebp - 0x100], 0
jne 0x1003d941
mov dword [ebp - 0x224], 1
jmp 0x1003d948
and dword [ebp - 0x224], 0
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp + eax*4 - 0x54]
mov dword [ebp - 0x2c8], eax
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x3a8]
mov dword [ebp - 0xb0], eax
jmp 0x1003d8bc
mov eax, dword [ebp - 0x14]
mov eax, dword [eax + 0x24]
and eax, 0x80000000
je 0x1003d986
mov dword [ebp - 0x108], 1
jmp 0x1003d98d
and dword [ebp - 0x108], 0
mov eax, dword [ebp - 0x108]
mov dword [ebp - 0x244], eax
mov dword [ebp - 0x10], 0x57e71f09
mov dword [ebp - 0x168], 0x34f1d4b0
mov dword [ebp - 0x234], 0xfffffffd
mov dword [ebp - 0x24], 0
jmp 0x1003d9c4
mov eax, dword [ebp - 0x24]
inc eax
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 1
jge 0x1003d9da
mov eax, dword [ebp - 0x24]
mov dword [ebp + eax*4 - 0x22c], 0x25004286
jmp 0x1003d9bd
mov dword [ebp - 0x24], 0
jmp 0x1003d9ea
mov eax, dword [ebp - 0x24]
inc eax
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 4
jge 0x1003da00
mov eax, dword [ebp - 0x24]
mov dword [ebp + eax*4 - 0x3cc], 0xfffffffa
jmp 0x1003d9e3
cmp dword [ebp - 0x10], 0
je 0x1003da16
xor eax, eax
je 0x1003da16
mov dword [ebp - 0x110], 1
jmp 0x1003da1d
and dword [ebp - 0x110], 0
cmp dword [ebp - 0x110], 0
jne 0x1003da34
or eax, 0xffffffff
jne 0x1003da34
and dword [ebp - 0x118], 0
jmp 0x1003da3e
mov dword [ebp - 0x118], 1
mov eax, dword [ebp - 0x118]
neg eax
cmp eax, 8
jae 0x1003da57
mov dword [ebp - 0x120], 1
jmp 0x1003da5e
and dword [ebp - 0x120], 0
cmp dword [ebp - 0x120], 0xa56c
je 0x1003da76
mov dword [ebp - 0x128], 1
jmp 0x1003da7d
and dword [ebp - 0x128], 0
mov eax, dword [ebp - 0x10]
sub eax, dword [ebp - 0x128]
cmp eax, dword [ebp - 0x10]
jl 0x1003da97
mov dword [ebp - 0x130], 1
jmp 0x1003da9e
and dword [ebp - 0x130], 0
cmp dword [ebp - 0x130], 0xbb35
je 0x1003dab9
cmp dword [ebp - 0x10], 0
jne 0x1003dab9
and dword [ebp - 0x138], 0
jmp 0x1003dac3
mov dword [ebp - 0x138], 1
mov eax, dword [ebp - 0x138]
sub eax, dword [ebp - 0x10]
cmp eax, dword [ebp - 0x10]
jge 0x1003dadd
mov dword [ebp - 0x140], 1
jmp 0x1003dae4
and dword [ebp - 0x140], 0
mov eax, dword [ebp - 0x140]
add eax, 0x7af9ca3
cmp dword [ebp - 0x10], eax
jg 0x1003db00
mov dword [ebp - 0x148], 1
jmp 0x1003db07
and dword [ebp - 0x148], 0
mov eax, dword [ebp - 0x148]
dec eax
sub eax, dword [ebp - 0x10]
cmp eax, dword [ebp - 0x10]
jge 0x1003db25
cmp dword [ebp - 0x10], 0
jne 0x1003db25
and dword [ebp - 0xc8], 0
jmp 0x1003db2f
mov dword [ebp - 0xc8], 1
mov eax, dword [ebp - 0x10]
imul eax, dword [ebp - 0xc8]
cmp eax, dword [ebp - 0x10]
jl 0x1003db4a
mov dword [ebp - 0x158], 1
jmp 0x1003db51
and dword [ebp - 0x158], 0
mov eax, dword [ebp - 0x10]
cmp dword [ebp - 0x158], eax
jl 0x1003db68
mov dword [ebp - 0x160], 1
jmp 0x1003db6f
and dword [ebp - 0x160], 0
mov eax, dword [ebp - 0x160]
mov dword [ebp - 0x168], eax
mov eax, dword [ebp - 0x168]
mov dword [ebp - 0x170], eax
push 4
pop eax
imul eax, eax, 0
mov ecx, dword [ebp - 0x170]
mov dword [ebp + eax - 0x22c], ecx
mov eax, dword [ebp - 0x10]
cmp dword [ebp - 0x170], eax
jne 0x1003dbb5
xor eax, eax
je 0x1003dbb5
mov dword [ebp - 0x178], 1
jmp 0x1003dbbc
and dword [ebp - 0x178], 0
mov eax, dword [ebp - 0x10]
imul eax, dword [ebp - 0x178]
cmp eax, 0xfffffff9
jg 0x1003dbd7
mov dword [ebp - 0x180], 1
jmp 0x1003dbde
and dword [ebp - 0x180], 0
mov eax, dword [ebp - 0x10]
cmp dword [ebp - 0x180], eax
jg 0x1003dbf5
mov dword [ebp - 0x188], 1
jmp 0x1003dbfc
and dword [ebp - 0x188], 0
cmp dword [ebp - 0x188], 0x1404fc4b
jle 0x1003dc14
mov dword [ebp - 0x190], 1
jmp 0x1003dc1b
and dword [ebp - 0x190], 0
mov eax, dword [ebp - 0x234]
cmp dword [ebp - 0x190], eax
jle 0x1003dc35
mov dword [ebp - 0x198], 1
jmp 0x1003dc3c
and dword [ebp - 0x198], 0
push 4
pop eax
imul eax, eax, 3
mov ecx, dword [ebp - 0x198]
mov dword [ebp + eax - 0x3cc], ecx
mov eax, dword [ebp - 0x14]
mov eax, dword [eax + 0x24]
and eax, 0x2000000
je 0x1003dca5
push 0x4000
mov eax, dword [ebp - 0x14]
push dword [eax + 0x10]
mov eax, dword [ebp - 0x14]
push dword [eax + 8]
push 0x1c20
push 0x275e
call fcn.10020150
pop ecx
pop ecx
call eax
push 0x7397
push 0
push 0x328
push 0
push 0x5e9a
push 0x226a
call fcn.10044250
add esp, 0x18
jmp 0x1003ce30
push 3
lea ecx, [ebp - 0x37c]
call fcn.10020d20
mov dword [ebp - 4], 6
mov dword [ebp - 0x208], 0
mov dword [ebp - 0x204], 0
mov dword [ebp - 0x200], 0
mov dword [ebp - 0x1fc], 0
lea eax, [ebp - 0x2d0]
push eax
push 0
lea eax, [ebp - 0x37c]
push eax
call fcn.100419b2
add esp, 0xc
push 4
pop eax
shl eax, 1
mov dword [ebp + eax - 0x208], 2
jmp 0x1003dd24
push 4
pop eax
shl eax, 1
mov eax, dword [ebp + eax - 0x208]
dec eax
push 4
pop ecx
shl ecx, 1
mov dword [ebp + ecx - 0x208], eax
push 4
pop eax
shl eax, 1
cmp dword [ebp + eax - 0x208], 0
jl 0x1003dd50
push 0x8df
push 1
push 0x742f
push 0
push 0x4079
call fcn.10033e2e
add esp, 0x14
jmp 0x1003dd0b
push 4
pop eax
shl eax, 1
push 4
pop ecx
imul ecx, ecx, 3
mov eax, dword [ebp + eax - 0x208]
mov dword [ebp + ecx - 0x208], eax
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x37c]
call fcn.10020da4
lea eax, [ebp - 0x23c]
push eax
push 0x4644
lea eax, [ebp - 0x244]
push eax
push 0x7c86
lea eax, [ebp - 0x24c]
push eax
lea eax, [ebp - 0x14]
push eax
push 0x556
push 0x56d6
push 0
push 0x25ed
push 0x48bc
lea eax, [ebp - 0x254]
push eax
push 1
call fcn.10039e28
add esp, 0x34
mov dword [ebp - 0x64], 0xfffffff7
mov dword [ebp - 0x1a8], 0xfffffffe
mov dword [ebp - 0xb8], 0x42628217
push 1
lea ecx, [ebp - 0x284]
call fcn.10020d20
mov dword [ebp - 4], 7
mov dword [ebp - 0x1b0], 0x372585fa
mov dword [ebp - 0x1d8], 0x16e289aa
mov dword [ebp - 0x60], 6
mov dword [ebp - 0x1a0], 0x12fd89d6
push 0
push 0x601e
push 0
push 1
push 0x4201
push 0x1930
lea eax, [ebp - 0x2d8]
push eax
lea eax, [ebp - 0x284]
push eax
call fcn.10043e71
add esp, 0x20
push 0x4510
lea eax, [ebp - 0x1a8]
push eax
lea eax, [ebp - 0x1d8]
push eax
lea eax, [ebp - 0x1b0]
push eax
lea eax, [ebp - 0xb8]
push eax
lea eax, [ebp - 0x64]
push eax
push 0
lea eax, [ebp - 0x284]
push eax
lea eax, [ebp - 0x60]
push eax
lea eax, [ebp - 0x1a0]
push eax
call fcn.100411cc
add esp, 0x28
cmp dword [ebp - 0x1a0], 0
je 0x1003dea0
cmp dword [ebp - 0x1a8], 0
je 0x1003dea0
mov dword [ebp - 0x1b8], 1
jmp 0x1003dea7
and dword [ebp - 0x1b8], 0
mov eax, dword [ebp - 0x1b0]
cmp dword [ebp - 0x1b8], eax
jle 0x1003dec1
mov dword [ebp - 0x1c0], 1
jmp 0x1003dec8
and dword [ebp - 0x1c0], 0
cmp dword [ebp - 0x1c0], 0x2c67
je 0x1003dee0
mov dword [ebp - 0x1c8], 1
jmp 0x1003dee7
and dword [ebp - 0x1c8], 0
push 0
lea ecx, [ebp - 0x284]
call fcn.10020de6
mov ecx, dword [ebp - 0x1c8]
sub ecx, dword [eax]
mov eax, dword [ebp - 0xb8]
lea eax, [ecx + eax - 0x10bf8d6d]
test eax, eax
je 0x1003df22
cmp dword [ebp - 0xb8], 0
je 0x1003df22
mov dword [ebp - 0x1d0], 1
jmp 0x1003df29
and dword [ebp - 0x1d0], 0
push 0
lea ecx, [ebp - 0x284]
call fcn.10020de6
mov eax, dword [eax]
cmp eax, dword [ebp - 0x1d0]
jne 0x1003df4c
mov dword [ebp - 0x1d8], 0x1af53c8c
jmp 0x1003dfc0
mov dword [ebp - 0x64], 0
jmp 0x1003df5c
mov eax, dword [ebp - 0x64]
inc eax
mov dword [ebp - 0x64], eax
cmp dword [ebp - 0x64], 0x17
jge 0x1003dfc0
mov dword [ebp - 0x1e0], 0xffffffff
mov dword [ebp - 0x60], 0x10
jmp 0x1003df7c
mov eax, dword [ebp - 0x60]
dec eax
mov dword [ebp - 0x60], eax
cmp dword [ebp - 0x60], 0xffffffed
jg 0x1003dfb1
mov byte [ebp - 0x3c], 0
lea eax, [ebp - 0x3c]
push eax
push 0x2720
push 0x59fc
push 0x3e4a
push 1
push 0x202b
push 1
push 0x6ba5
call fcn.10033bcd
add esp, 0x20
jmp 0x1003df75
mov eax, dword [ebp - 0x1e0]
dec eax
mov dword [ebp - 0x1e0], eax
jmp 0x1003df55
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x284]
call fcn.10020da4
push 0x3e14
push 0x3ce4
lea eax, [ebp - 0x7c]
push eax
push 1
push 0
lea eax, [ebp - 0x14]
push eax
push 0x21d
lea eax, [ebp - 0x1f0]
push eax
push 1
push 0x1e8f
call fcn.100419e5
add esp, 0x28
mov dword [ebp - 0x84], 0x9f9b3198
mov dword [ebp - 0x2e0], 0xf506e60b
mov dword [ebp - 0x2e8], 0x94fe5f36
mov dword [ebp - 0x84], 0
jmp 0x1003e037
mov eax, dword [ebp - 0x84]
inc eax
mov dword [ebp - 0x84], eax
cmp dword [ebp - 0x84], 0xe
jg 0x1003e070
mov dword [ebp - 0x1e8], 0x34d
mov eax, dword [ebp - 0x1e8]
inc eax
mov dword [ebp - 0x1e8], eax
mov byte [ebp - 0x2a], 0
movzx eax, byte [ebp - 0x2a]
test eax, eax
je 0x1003e06e
push 1
push 0
call fcn.100342ac
pop ecx
pop ecx
jmp 0x1003e02a
cmp dword [ebp - 0x1f0], 0
jbe 0x1003e0a5
lea eax, [ebp - 0x2f0]
push eax
push dword [ebp - 0x254]
push dword [ebp - 0x1f0]
mov eax, dword [ebp - 0x14]
push dword [eax + 8]
push 0x1c20
push 0x383b
call fcn.10020150
pop ecx
pop ecx
call eax
jmp 0x1003ce30
jmp 0x1003e0de
mov eax, dword [ebp + 0x14]
mov dword [ebp - 0x264], eax
mov eax, dword [ebp + 8]
mov dword [ebp - 0x25c], eax
push 0x78d9
push dword [ebp - 0x25c]
push 0
push dword [ebp - 0x264]
push 0x4609
call fcn.100346f7
add esp, 0x14
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop esi
mov esp, ebp
pop ebp
ret