Function at 0x4197f5
Capabilities:
Inspect section memory permissions
Resolve function by parsing pe exports

Disassembly:
mov eax, 0x1100
call fcn.0041bda0
push ebx
push ebp
push esi
push edi
push 0x1078
lea eax, [esp + 0x9c]
mov esi, ecx
push 0
push eax
call fcn.0041cc70
lea eax, [esp + 0xa4]
xor edi, edi
mov dword [esp + 0x28], eax
add esp, 0xc
lea eax, [esp + 0x120]
inc edi
mov dword [esp + 0x20], eax
lea eax, [esp + 0x1a8]
mov dword [esp + 0x24], eax
lea eax, [esp + 0x230]
mov dword [esp + 0x28], eax
lea eax, [esp + 0x2b8]
mov dword [esp + 0x2c], eax
lea eax, [esp + 0x340]
mov dword [esp + 0x30], eax
lea eax, [esp + 0x3c8]
mov dword [esp + 0x34], eax
lea eax, [esp + 0x450]
mov dword [esp + 0x38], eax
lea eax, [esp + 0x4d8]
mov dword [esp + 0x3c], eax
lea eax, [esp + 0x560]
mov dword [esp + 0x40], eax
lea eax, [esp + 0x5e8]
mov dword [esp + 0x44], eax
lea eax, [esp + 0x670]
mov dword [esp + 0x48], eax
lea eax, [esp + 0x6f8]
mov dword [esp + 0x4c], eax
lea eax, [esp + 0x780]
mov dword [esp + 0x50], eax
lea eax, [esp + 0x808]
mov dword [esp + 0x54], eax
lea eax, [esp + 0x890]
mov dword [esp + 0x58], eax
lea eax, [esp + 0x918]
mov dword [esp + 0x5c], eax
lea eax, [esp + 0x9a0]
mov dword [esp + 0x60], eax
lea eax, [esp + 0xa28]
mov dword [esp + 0x64], eax
lea eax, [esp + 0xab0]
mov dword [esp + 0x68], eax
lea eax, [esp + 0xb38]
mov dword [esp + 0x6c], eax
lea eax, [esp + 0xbc0]
mov dword [esp + 0x70], eax
lea eax, [esp + 0xc48]
mov dword [esp + 0x74], eax
lea eax, [esp + 0xcd0]
mov dword [esp + 0x78], eax
lea eax, [esp + 0xd58]
mov dword [esp + 0x7c], eax
lea eax, [esp + 0xde0]
mov dword [esp + 0x80], eax
lea eax, [esp + 0xe68]
mov dword [esp + 0x84], eax
lea eax, [esp + 0xef0]
mov dword [esp + 0x88], eax
lea eax, [esp + 0xf78]
mov dword [esp + 0x8c], eax
lea eax, [esp + 0x1000]
mov dword [esp + 0x90], eax
lea eax, [esp + 0x1088]
mov dword [esp + 0x94], eax
mov eax, dword [esp + 0x1118]
mov dword [esp + 0x18], eax
mov eax, dword [esi]
mov ebx, dword [esp + edi*4 + 0x18]
shl eax, 2
push eax
push dword [esp + edi*4 + 0x18]
push ebx
call fcn.0041c6f0
pop ecx
pop ecx
push ebx
mov ecx, esi
call fcn.0041a6be
mov ebp, dword [esi + 0x140c]
mov ecx, esi
push ebp
push ebx
call fcn.0041a5f8
test ax, ax
js 0x4199cd
push ecx
push ebp
push ebx
mov ecx, esi
call fcn.0041a638
inc edi
cmp edi, 0x20
jl 0x419991
mov ebp, dword [esi]
mov edi, dword [esp + 0x1114]
shl ebp, 2
push ebp
push 0
push edi
call fcn.0041cc70
mov ebx, dword [esp + 0x1128]
add esp, 0xc
and dword [edi], 0
mov ecx, esi
push ebx
call fcn.004197ce
movzx ecx, ax
test cx, cx
je 0x41a572
movsx eax, cx
dec eax
lea eax, [ebx + eax*4]
mov dword [esp + 0x10], eax
dec ecx
lea edx, [edi - 4]
mov dword [esp + 0x14], ecx
mov ecx, dword [esi]
lea edx, [edx + ecx*4]
mov ebx, edx
jmp 0x419a2f
lea ebx, [ebx - 4]
mov eax, dword [ebx]
mov dword [edx], eax
sub edx, 4
sub ecx, 1
jne 0x419a25
and dword [edx], ecx
mov eax, dword [edi + ebp - 4]
sub eax, dword [esi + 0x310]
test eax, eax
jg 0x419a67
jne 0x419a76
mov eax, dword [esi + 0x390]
cmp dword [edi + ebp - 8], eax
ja 0x419a67
jne 0x419a76
push dword [esi + 0x1488]
mov ecx, esi
push edi
call fcn.0041a5f8
test ax, ax
js 0x419a76
push ecx
push dword [esi + 0x1488]
mov ecx, esi
push edi
call fcn.0041a638
mov eax, dword [edi + ebp - 4]
sub eax, dword [esi + 0x30c]
test eax, eax
jg 0x419aa7
jne 0x419ab6
mov eax, dword [esi + 0x38c]
cmp dword [edi + ebp - 8], eax
ja 0x419aa7
jne 0x419ab6
push dword [esi + 0x1484]
mov ecx, esi
push edi
call fcn.0041a5f8
test ax, ax
js 0x419ab6
push ecx
push dword [esi + 0x1484]
mov ecx, esi
push edi
call fcn.0041a638
mov eax, dword [edi + ebp - 4]
sub eax, dword [esi + 0x308]
test eax, eax
jg 0x419ae7
jne 0x419af6
mov eax, dword [esi + 0x388]
cmp dword [edi + ebp - 8], eax
ja 0x419ae7
jne 0x419af6
push dword [esi + 0x1480]
mov ecx, esi
push edi
call fcn.0041a5f8
test ax, ax
js 0x419af6
push ecx
push dword [esi + 0x1480]
mov ecx, esi
push edi
call fcn.0041a638
mov eax, dword [edi + ebp - 4]
sub eax, dword [esi + 0x304]
test eax, eax
jg 0x419b27
jne 0x419b36
mov eax, dword [esi + 0x384]
cmp dword [edi + ebp - 8], eax
ja 0x419b27
jne 0x419b36
push dword [esi + 0x147c]
mov ecx, esi
push edi
call fcn.0041a5f8
test ax, ax
js 0x419b36
push ecx
push dword [esi + 0x147c]
mov ecx, esi
push edi
call fcn.0041a638
mov eax, dword [edi + ebp - 4]
sub eax, dword [esi + 0x300]
test eax, eax
jg 0x419b67
jne 0x419b76
mov eax, dword [esi + 0x380]
cmp dword [edi + ebp - 8], eax
ja 0x419b67
jne 0x419b76
push dword [esi + 0x1478]
mov ecx, esi
push edi
call fcn.0041a5f8
test ax, ax
js 0x419b76
push ecx
push dword [esi + 0x1478]
mov ecx, esi
push edi
call fcn.0041a638
mov eax, dword [edi + ebp - 4]
sub eax, dword [esi + 0x2fc]
test eax, eax
jg 0x419ba7
jne 0x419bb6
mov eax, dword [esi + 0x37c]
cmp dword [edi + ebp - 8], eax
ja 0x419ba7
jne 0x419bb6
push dword [esi + 0x1474]
mov ecx, esi
push edi
call fcn.0041a5f8
test ax, ax
js 0x419bb6
push ecx
push dword [esi + 0x1474]
mov ecx, esi
push edi
call fcn.0041a638
mov eax, dword [edi + ebp - 4]
sub eax, dword [esi + 0x2f8]
test eax, eax
jg 0x419be7
jne 0x419bf6
mov eax, dword [esi + 0x378]
cmp dword [edi + ebp - 8], eax
ja 0x419be7
jne 0x419bf6
push dword [esi + 0x1470]
mov ecx, esi
push edi
call fcn.0041a5f8
test ax, ax
js 0x419bf6
push ecx
push dword [esi + 0x1470]
mov ecx, esi
push edi
call fcn.0041a638
mov eax, dword [edi + ebp - 4]
sub eax, dword [esi + 0x2f4]
test eax, eax
jg 0x419c27
jne 0x419c36
mov eax, dword [esi + 0x374]
cmp dword [edi + ebp - 8], eax
ja 0x419c27
jne 0x419c36
push dword [esi + 0x146c]
mov ecx, esi
push edi
call fcn.0041a5f8
test ax, ax
js 0x419c36
push ecx
push dword [esi + 0x146c]
mov ecx, esi
push edi
call fcn.0041a638
mov eax, dword [edi + ebp - 4]
sub eax, dword [esi + 0x2f0]
test eax, eax
jg 0x419c67
jne 0x419c76
mov eax, dword [esi + 0x370]
cmp dword [edi + ebp - 8], eax
ja 0x419c67
jne 0x419c76
push dword [esi + 0x1468]
mov ecx, esi
push edi
call fcn.0041a5f8
test ax, ax
js 0x419c76
push ecx
push dword [esi + 0x1468]
mov ecx, esi
push edi
call fcn.0041a638
mov eax, dword [edi + ebp - 4]
sub eax, dword [esi + 0x2ec]
test eax, eax
jg 0x419ca7
jne 0x419cb6
mov eax, dword [esi + 0x36c]
cmp dword [edi + ebp - 8], eax
ja 0x419ca7
jne 0x419cb6
push dword [esi + 0x1464]
mov ecx, esi
push edi
call fcn.0041a5f8
test ax, ax
js 0x419cb6
push ecx
push dword [esi + 0x1464]
mov ecx, esi
push edi
call fcn.0041a638
mov eax, dword [edi + ebp - 4]
sub eax, dword [esi + 0x2e8]
test eax, eax
jg 0x419ce7
jne 0x419cf6
mov eax, dword [esi + 0x368]
cmp dword [edi + ebp - 8], eax
ja 0x419ce7
jne 0x419cf6
push dword [esi + 0x1460]
mov ecx, esi
push edi
call fcn.0041a5f8
test ax, ax
js 0x419cf6
push ecx
push dword [esi + 0x1460]
mov ecx, esi
push edi
call fcn.0041a638
mov eax, dword [edi + ebp - 4]
sub eax, dword [esi + 0x2e4]
test eax, eax
jg 0x419d27
jne 0x419d36
mov eax, dword [esi + 0x364]
cmp dword [edi + ebp - 8], eax
ja 0x419d27
jne 0x419d36
push dword [esi + 0x145c]
mov ecx, esi
push edi
call fcn.0041a5f8
test ax, ax
js 0x419d36
push ecx
push dword [esi + 0x145c]
mov ecx, esi
push edi
call fcn.0041a638
mov eax, dword [edi + ebp - 4]
sub eax, dword [esi + 0x2e0]
test eax, eax
jg 0x419d67
jne 0x419d76
mov eax, dword [esi + 0x360]
cmp dword [edi + ebp - 8], eax
ja 0x419d67
jne 0x419d76
push dword [esi + 0x1458]
mov ecx, esi
push edi
call fcn.0041a5f8
test ax, ax
js 0x419d76
push ecx
push dword [esi + 0x1458]
mov ecx, esi
push edi
call fcn.0041a638
mov eax, dword [edi + ebp - 4]
sub eax, dword [esi + 0x2dc]
test eax, eax
jg 0x419da7
jne 0x419db6
mov eax, dword [esi + 0x35c]
cmp dword [edi + ebp - 8], eax
ja 0x419da7
jne 0x419db6
push dword [esi + 0x1454]
mov ecx, esi
push edi
call fcn.0041a5f8
test ax, ax
js 0x419db6
push ecx
push dword [esi + 0x1454]
mov ecx, esi
push edi
call fcn.0041a638
mov eax, dword [edi + ebp - 4]
sub eax, dword [esi + 0x2d8]
test eax, eax
jg 0x419de7
jne 0x419df6
mov eax, dword [esi + 0x358]
cmp dword [edi + ebp - 8], eax
ja 0x419de7
jne 0x419df6
push dword [esi + 0x1450]
mov ecx, esi
push edi
call fcn.0041a5f8
test ax, ax
js 0x419df6
push ecx
push dword [esi + 0x1450]
mov ecx, esi
push edi
call fcn.0041a638
mov eax, dword [edi + ebp - 4]
sub eax, dword [esi + 0x2d4]
test eax, eax
jg 0x419e27
jne 0x419e36
mov eax, dword [esi + 0x354]
cmp dword [edi + ebp - 8], eax
ja 0x419e27
jne 0x419e36
push dword [esi + 0x144c]
mov ecx, esi
push edi
call fcn.0041a5f8
test ax, ax
js 0x419e36
push ecx
push dword [esi + 0x144c]
mov ecx, esi
push edi
call fcn.0041a638
mov eax, dword [edi + ebp - 4]
sub eax, dword [esi + 0x2d0]
test eax, eax
jg 0x419e67
jne 0x419e76
mov eax, dword [esi + 0x350]
cmp dword [edi + ebp - 8], eax
ja 0x419e67
jne 0x419e76
push dword [esi + 0x1448]
mov ecx, esi
push edi
call fcn.0041a5f8
test ax, ax
js 0x419e76
push ecx
push dword [esi + 0x1448]
mov ecx, esi
push edi
call fcn.0041a638
mov eax, dword [edi + ebp - 4]
sub eax, dword [esi + 0x2cc]
test eax, eax
jg 0x419ea7
jne 0x419eb6
mov eax, dword [esi + 0x34c]
cmp dword [edi + ebp - 8], eax
ja 0x419ea7
jne 0x419eb6
push dword [esi + 0x1444]
mov ecx, esi
push edi
call fcn.0041a5f8
test ax, ax
js 0x419eb6
push ecx
push dword [esi + 0x1444]
mov ecx, esi
push edi
call fcn.0041a638
mov eax, dword [edi + ebp - 4]
sub eax, dword [esi + 0x2c8]
test eax, eax
jg 0x419ee7
jne 0x419ef6
mov eax, dword [esi + 0x348]
cmp dword [edi + ebp - 8], eax
ja 0x419ee7
jne 0x419ef6
push dword [esi + 0x1440]
mov ecx, esi
push edi
call fcn.0041a5f8
test ax, ax
js 0x419ef6
push ecx
push dword [esi + 0x1440]
mov ecx, esi
push edi
call fcn.0041a638
mov eax, dword [edi + ebp - 4]
sub eax, dword [esi + 0x2c4]
test eax, eax
jg 0x419f27
jne 0x419f36
mov eax, dword [esi + 0x344]
cmp dword [edi + ebp - 8], eax
ja 0x419f27
jne 0x419f36
push dword [esi + 0x143c]
mov ecx, esi
push edi
call fcn.0041a5f8
test ax, ax
js 0x419f36
push ecx
push dword [esi + 0x143c]
mov ecx, esi
push edi
call fcn.0041a638
mov eax, dword [edi + ebp - 4]
sub eax, dword [esi + 0x2c0]
test eax, eax
jg 0x419f67
jne 0x419f76
mov eax, dword [esi + 0x340]
cmp dword [edi + ebp - 8], eax
ja 0x419f67
jne 0x419f76
push dword [esi + 0x1438]
mov ecx, esi
push edi
call fcn.0041a5f8
test ax, ax
js 0x419f76
push ecx
push dword [esi + 0x1438]
mov ecx, esi
push edi
call fcn.0041a638
mov eax, dword [edi + ebp - 4]
sub eax, dword [esi + 0x2bc]
test eax, eax
jg 0x419fa7
jne 0x419fb6
mov eax, dword [esi + 0x33c]
cmp dword [edi + ebp - 8], eax
ja 0x419fa7
jne 0x419fb6
push dword [esi + 0x1434]
mov ecx, esi
push edi
call fcn.0041a5f8
test ax, ax
js 0x419fb6
push ecx
push dword [esi + 0x1434]
mov ecx, esi
push edi
call fcn.0041a638
mov eax, dword [edi + ebp - 4]
sub eax, dword [esi + 0x2b8]
test eax, eax
jg 0x419fe7
jne 0x419ff6
mov eax, dword [esi + 0x338]
cmp dword [edi + ebp - 8], eax
ja 0x419fe7
jne 0x419ff6
push dword [esi + 0x1430]
mov ecx, esi
push edi
call fcn.0041a5f8
test ax, ax
js 0x419ff6
push ecx
push dword [esi + 0x1430]
mov ecx, esi
push edi
call fcn.0041a638
mov eax, dword [edi + ebp - 4]
sub eax, dword [esi + 0x2b4]
test eax, eax
jg 0x41a027
jne 0x41a036
mov eax, dword [esi + 0x334]
cmp dword [edi + ebp - 8], eax
ja 0x41a027
jne 0x41a036
push dword [esi + 0x142c]
mov ecx, esi
push edi
call fcn.0041a5f8
test ax, ax
js 0x41a036
push ecx
push dword [esi + 0x142c]
mov ecx, esi
push edi
call fcn.0041a638
mov eax, dword [edi + ebp - 4]
sub eax, dword [esi + 0x2b0]
test eax, eax
jg 0x41a067
jne 0x41a076
mov eax, dword [esi + 0x330]
cmp dword [edi + ebp - 8], eax
ja 0x41a067
jne 0x41a076
push dword [esi + 0x1428]
mov ecx, esi
push edi
call fcn.0041a5f8
test ax, ax
js 0x41a076
push ecx
push dword [esi + 0x1428]
mov ecx, esi
push edi
call fcn.0041a638
mov eax, dword [edi + ebp - 4]
sub eax, dword [esi + 0x2ac]
test eax, eax
jg 0x41a0a7
jne 0x41a0b6
mov eax, dword [esi + 0x32c]
cmp dword [edi + ebp - 8], eax
ja 0x41a0a7
jne 0x41a0b6
push dword [esi + 0x1424]
mov ecx, esi
push edi
call fcn.0041a5f8
test ax, ax
js 0x41a0b6
push ecx
push dword [esi + 0x1424]
mov ecx, esi
push edi
call fcn.0041a638
mov eax, dword [edi + ebp - 4]
sub eax, dword [esi + 0x2a8]
test eax, eax
jg 0x41a0e7
jne 0x41a0f6
mov eax, dword [esi + 0x328]
cmp dword [edi + ebp - 8], eax
ja 0x41a0e7
jne 0x41a0f6
push dword [esi + 0x1420]
mov ecx, esi
push edi
call fcn.0041a5f8
test ax, ax
js 0x41a0f6
push ecx
push dword [esi + 0x1420]
mov ecx, esi
push edi
call fcn.0041a638
mov ebx, dword [esp + 0x10]
cmp dword [ebx], 0
jge 0x41a10f
lea eax, [esp + 0x1088]
mov ecx, esi
push eax
push edi
call fcn.0041a678
test dword [ebx], 0x40000000
je 0x41a127
lea eax, [esp + 0x1000]
mov ecx, esi
push eax
push edi
call fcn.0041a678
test dword [ebx], 0x20000000
je 0x41a13f
lea eax, [esp + 0xf78]
mov ecx, esi
push eax
push edi
call fcn.0041a678
test dword [ebx], 0x10000000
je 0x41a157
lea eax, [esp + 0xef0]
mov ecx, esi
push eax
push edi
call fcn.0041a678
test dword [ebx], 0x8000000
je 0x41a16f
lea eax, [esp + 0xe68]
mov ecx, esi
push eax
push edi
call fcn.0041a678
test dword [ebx], 0x4000000
je 0x41a187
lea eax, [esp + 0xde0]
mov ecx, esi
push eax
push edi
call fcn.0041a678
test dword [ebx], 0x2000000
je 0x41a19f
lea eax, [esp + 0xd58]
mov ecx, esi
push eax
push edi
call fcn.0041a678
test dword [ebx], 0x1000000
je 0x41a1b7
lea eax, [esp + 0xcd0]
mov ecx, esi
push eax
push edi
call fcn.0041a678
test dword [ebx], 0x800000
je 0x41a1cf
lea eax, [esp + 0xc48]
mov ecx, esi
push eax
push edi
call fcn.0041a678
test dword [ebx], 0x400000
je 0x41a1e7
lea eax, [esp + 0xbc0]
mov ecx, esi
push eax
push edi
call fcn.0041a678
test dword [ebx], 0x200000
je 0x41a1ff
lea eax, [esp + 0xb38]
mov ecx, esi
push eax
push edi
call fcn.0041a678
test dword [ebx], 0x100000
je 0x41a217
lea eax, [esp + 0xab0]
mov ecx, esi
push eax
push edi
call fcn.0041a678
test dword [ebx], 0x80000
je 0x41a22f
lea eax, [esp + 0xa28]
mov ecx, esi
push eax
push edi
call fcn.0041a678
test dword [ebx], 0x40000
je 0x41a247
lea eax, [esp + 0x9a0]
mov ecx, esi
push eax
push edi
call fcn.0041a678
test dword [ebx], 0x20000
je 0x41a25f
lea eax, [esp + 0x918]
mov ecx, esi
push eax
push edi
call fcn.0041a678
test dword [ebx], 0x10000
je 0x41a277
lea eax, [esp + 0x890]
mov ecx, esi
push eax
push edi
call fcn.0041a678
test dword [ebx], 0x8000
je 0x41a28f
lea eax, [esp + 0x808]
mov ecx, esi
push eax
push edi
call fcn.0041a678
test dword [ebx], 0x4000
je 0x41a2a7
lea eax, [esp + 0x780]
mov ecx, esi
push eax
push edi
call fcn.0041a678
test dword [ebx], 0x2000
je 0x41a2bf
lea eax, [esp + 0x6f8]
mov ecx, esi
push eax
push edi
call fcn.0041a678
test dword [ebx], 0x1000
je 0x41a2d7
lea eax, [esp + 0x670]
mov ecx, esi
push eax
push edi
call fcn.0041a678
test dword [ebx], 0x800
je 0x41a2ef
lea eax, [esp + 0x5e8]
mov ecx, esi
push eax
push edi
call fcn.0041a678
test dword [ebx], 0x400
je 0x41a307
lea eax, [esp + 0x560]
mov ecx, esi
push eax
push edi
call fcn.0041a678
test dword [ebx], 0x200
je 0x41a31f
lea eax, [esp + 0x4d8]
mov ecx, esi
push eax
push edi
call fcn.0041a678
test dword [ebx], 0x100
je 0x41a337
lea eax, [esp + 0x450]
mov ecx, esi
push eax
push edi
call fcn.0041a678
test byte [ebx], 0x80
je 0x41a34c
lea eax, [esp + 0x3c8]
mov ecx, esi
push eax
push edi
call fcn.0041a678
test byte [ebx], 0x40
je 0x41a361
lea eax, [esp + 0x340]
mov ecx, esi
push eax
push edi
call fcn.0041a678
test byte [ebx], 0x20
je 0x41a376
lea eax, [esp + 0x2b8]
mov ecx, esi
push eax
push edi
call fcn.0041a678
test byte [ebx], 0x10
je 0x41a38b
lea eax, [esp + 0x230]
mov ecx, esi
push eax
push edi
call fcn.0041a678
test byte [ebx], 8
je 0x41a3a0
lea eax, [esp + 0x1a8]
mov ecx, esi
push eax
push edi
call fcn.0041a678
test byte [ebx], 4
je 0x41a3b5
lea eax, [esp + 0x120]
mov ecx, esi
push eax
push edi
call fcn.0041a678
test byte [ebx], 2
je 0x41a3ca
lea eax, [esp + 0x98]
mov ecx, esi
push eax
push edi
call fcn.0041a678
test byte [ebx], 1
je 0x41a3de
push dword [esp + 0x1118]
mov ecx, esi
push edi
call fcn.0041a678
mov eax, dword [edi + ebp - 4]
sub eax, dword [esi + 0x2a8]
test eax, eax
jg 0x41a40f
jne 0x41a41e
mov eax, dword [esi + 0x328]
cmp dword [edi + ebp - 8], eax
ja 0x41a40f
jne 0x41a41e
push dword [esi + 0x1420]
mov ecx, esi
push edi
call fcn.0041a5f8
test ax, ax
js 0x41a41e
push ecx
push dword [esi + 0x1420]
mov ecx, esi
push edi
call fcn.0041a638
mov eax, dword [edi + ebp - 4]
sub eax, dword [esi + 0x2a4]
test eax, eax
jg 0x41a44f
jne 0x41a45e
mov eax, dword [esi + 0x324]
cmp dword [edi + ebp - 8], eax
ja 0x41a44f
jne 0x41a45e
push dword [esi + 0x141c]
mov ecx, esi
push edi
call fcn.0041a5f8
test ax, ax
js 0x41a45e
push ecx
push dword [esi + 0x141c]
mov ecx, esi
push edi
call fcn.0041a638
mov eax, dword [edi + ebp - 4]
sub eax, dword [esi + 0x2a0]
test eax, eax
jg 0x41a48f
jne 0x41a49e
mov eax, dword [esi + 0x320]
cmp dword [edi + ebp - 8], eax
ja 0x41a48f
jne 0x41a49e
push dword [esi + 0x1418]
mov ecx, esi
push edi
call fcn.0041a5f8
test ax, ax
js 0x41a49e
push ecx
push dword [esi + 0x1418]
mov ecx, esi
push edi
call fcn.0041a638
mov eax, dword [edi + ebp - 4]
sub eax, dword [esi + 0x29c]
test eax, eax
jg 0x41a4cf
jne 0x41a4de
mov eax, dword [esi + 0x31c]
cmp dword [edi + ebp - 8], eax
ja 0x41a4cf
jne 0x41a4de
push dword [esi + 0x1414]
mov ecx, esi
push edi
call fcn.0041a5f8
test ax, ax
js 0x41a4de
push ecx
push dword [esi + 0x1414]
mov ecx, esi
push edi
call fcn.0041a638
mov eax, dword [edi + ebp - 4]
sub eax, dword [esi + 0x298]
test eax, eax
jg 0x41a50f
jne 0x41a51e
mov eax, dword [esi + 0x318]
cmp dword [edi + ebp - 8], eax
ja 0x41a50f
jne 0x41a51e
push dword [esi + 0x1410]
mov ecx, esi
push edi
call fcn.0041a5f8
test ax, ax
js 0x41a51e
push ecx
push dword [esi + 0x1410]
mov ecx, esi
push edi
call fcn.0041a638
mov eax, dword [edi + ebp - 4]
sub eax, dword [esi + 0x294]
test eax, eax
jg 0x41a54f
jne 0x41a55e
mov eax, dword [esi + 0x314]
cmp dword [edi + ebp - 8], eax
ja 0x41a54f
jne 0x41a55e
push dword [esi + 0x140c]
mov ecx, esi
push edi
call fcn.0041a5f8
test ax, ax
js 0x41a55e
push ecx
push dword [esi + 0x140c]
mov ecx, esi
push edi
call fcn.0041a638
mov ecx, dword [esp + 0x14]
sub ebx, 4
mov dword [esp + 0x10], ebx
test cx, cx
jne 0x419a14
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x1100
ret 0xc