Function at 0x409154
Capabilities:
Inspect section memory permissions

Disassembly:
push edi
sub esp, 0x154
movsx eax, byte [0x59b084]
test eax, eax
je 0x40bbc6
mov byte [0x59b084], 0
mov eax, dword [0x834be4]
mov edx, dword [eax]
push eax
call dword [edx + 0x10]
shr eax, 0x14
push eax
push 0x83c1cc
push 0x83a2b0
call fcn.0046d484
add esp, 0xc
mov edx, dword [0x834be4]
mov ecx, dword [edx]
lea eax, [esp + 0x1c]
push eax
push edx
call dword [ecx + 0x1c]
push dword [esp + 0x24]
push 0x83c1e8
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0x30], 0x20000
mov eax, 0
setne al
push eax
push 0x83c1f4
push 0x83a2b0
call fcn.0046d484
push dword [esp + 0x40]
push 0x83c218
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0x4c], 0x40000000
mov eax, 0
setne al
push eax
push 0x83c228
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0x58], 0x100000
mov eax, 0
setne al
push eax
push 0x83c24c
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0x64], 0x10000000
mov eax, 0
setne al
push eax
push 0x83c270
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0x70], 0x20000000
mov eax, 0
setne al
push eax
push 0x83c294
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0x7c], 0x20000
mov eax, 0
setne al
push eax
push 0x83c2b8
push 0x83a2b0
call fcn.0046d484
push dword [esp + 0x8c]
push 0x83c2dc
push 0x83a2b0
call fcn.0046d484
test byte [esp + 0x98], 0x20
mov eax, 0
setne al
push eax
push 0x83c2ec
push 0x83a2b0
call fcn.0046d484
add esp, 0x78
test dword [esp + 0x2c], 0x100
mov eax, 0
setne al
push eax
push 0x83c314
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0x38], 0x200
mov eax, 0
setne al
push eax
push 0x83c33c
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0x44], 0x80
mov eax, 0
setne al
push eax
push 0x83c364
push 0x83a2b0
call fcn.0046d484
push dword [esp + 0x54]
push 0x83c38c
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0x60], 0x80000000
mov eax, 0
setne al
push eax
push 0x83c3ac
push 0x83a2b0
call fcn.0046d484
test byte [esp + 0x6c], 1
mov eax, 0
setne al
push eax
push 0x83c3d0
push 0x83a2b0
call fcn.0046d484
test byte [esp + 0x78], 2
mov eax, 0
setne al
push eax
push 0x83c3f4
push 0x83a2b0
call fcn.0046d484
test byte [esp + 0x84], 4
mov eax, 0
setne al
push eax
push 0x83c418
push 0x83a2b0
call fcn.0046d484
test byte [esp + 0x90], 8
mov eax, 0
setne al
push eax
push 0x83c43c
push 0x83a2b0
call fcn.0046d484
push dword [esp + 0xa0]
push 0x83c460
push 0x83a2b0
call fcn.0046d484
add esp, 0x78
test byte [esp + 0x34], 1
mov eax, 0
setne al
push eax
push 0x83c474
push 0x83a2b0
call fcn.0046d484
test byte [esp + 0x40], 2
mov eax, 0
setne al
push eax
push 0x83c498
push 0x83a2b0
call fcn.0046d484
push dword [esp + 0x50]
push 0x83c4bc
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0x5c], 0x20000
mov eax, 0
setne al
push eax
push 0x83c4cc
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0x68], 0x800
mov eax, 0
setne al
push eax
push 0x83c4f0
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0x74], 0x2000
mov eax, 0
setne al
push eax
push 0x83c514
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0x80], 0x8000
mov eax, 0
setne al
push eax
push 0x83c538
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0x8c], 0x400
mov eax, 0
setne al
push eax
push 0x83c55c
push 0x83a2b0
call fcn.0046d484
test byte [esp + 0x98], 0x10
mov eax, 0
setne al
push eax
push 0x83c580
push 0x83a2b0
call fcn.0046d484
test byte [esp + 0xa4], 0x20
mov eax, 0
setne al
push eax
push 0x83c5a4
push 0x83a2b0
call fcn.0046d484
add esp, 0x78
test dword [esp + 0x38], 0x80000
mov eax, 0
setne al
push eax
push 0x83c5c8
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0x44], 0x10000
mov eax, 0
setne al
push eax
push 0x83c5ec
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0x50], 0x1000000
mov eax, 0
setne al
push eax
push 0x83c610
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0x5c], 0x100000
mov eax, 0
setne al
push eax
push 0x83c634
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0x68], 0x200000
mov eax, 0
setne al
push eax
push 0x83c658
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0x74], 0x400000
mov eax, 0
setne al
push eax
push 0x83c67c
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0x80], 0x800000
mov eax, 0
setne al
push eax
push 0x83c6a0
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0x8c], 0x4000
mov eax, 0
setne al
push eax
push 0x83c6c4
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0x98], 0x1000
mov eax, 0
setne al
push eax
push 0x83c6e8
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0xa4], 0x100
mov eax, 0
setne al
push eax
push 0x83c70c
push 0x83a2b0
call fcn.0046d484
add esp, 0x78
test dword [esp + 0x38], 0x200
mov eax, 0
setne al
push eax
push 0x83c730
push 0x83a2b0
call fcn.0046d484
test byte [esp + 0x44], 0x40
mov eax, 0
setne al
push eax
push 0x83c754
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0x50], 0x80
mov eax, 0
setne al
push eax
push 0x83c778
push 0x83a2b0
call fcn.0046d484
push dword [esp + 0x60]
push 0x83c79c
push 0x83a2b0
call fcn.0046d484
test byte [esp + 0x6c], 2
mov eax, 0
setne al
push eax
push 0x83c7b8
push 0x83a2b0
call fcn.0046d484
test byte [esp + 0x78], 0x10
mov eax, 0
setne al
push eax
push 0x83c7dc
push 0x83a2b0
call fcn.0046d484
test byte [esp + 0x84], 0x20
mov eax, 0
setne al
push eax
push 0x83c800
push 0x83a2b0
call fcn.0046d484
test byte [esp + 0x90], 0x40
mov eax, 0
setne al
push eax
push 0x83c824
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0x9c], 0x80
mov eax, 0
setne al
push eax
push 0x83c848
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0xa8], 0x100
mov eax, 0
setne al
push eax
push 0x83c86c
push 0x83a2b0
call fcn.0046d484
add esp, 0x78
test dword [esp + 0x3c], 0x200
mov eax, 0
setne al
push eax
push 0x83c890
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0x48], 0x400
mov eax, 0
setne al
push eax
push 0x83c8b4
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0x54], 0x800
mov eax, 0
setne al
push eax
push 0x83c8d8
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0x60], 0x1000
mov eax, 0
setne al
push eax
push 0x83c8fc
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0x6c], 0x4000
mov eax, 0
setne al
push eax
push 0x83c920
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0x78], 0x8000
mov eax, 0
setne al
push eax
push 0x83c944
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0x84], 0x10000
mov eax, 0
setne al
push eax
push 0x83c968
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0x90], 0x20000
mov eax, 0
setne al
push eax
push 0x83c98c
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0x9c], 0x40000
mov eax, 0
setne al
push eax
push 0x83c9b0
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0xa8], 0x80000
mov eax, 0
setne al
push eax
push 0x83c9d4
push 0x83a2b0
call fcn.0046d484
add esp, 0x78
test dword [esp + 0x3c], 0x100000
mov eax, 0
setne al
push eax
push 0x83c9f8
push 0x83a2b0
call fcn.0046d484
push dword [esp + 0x4c]
push 0x83ca1c
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0x58], 0x20000
mov eax, 0
setne al
push eax
push 0x83ca30
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0x64], 0x400000
mov eax, 0
setne al
push eax
push 0x83ca54
push 0x83a2b0
call fcn.0046d484
test byte [esp + 0x70], 1
mov eax, 0
setne al
push eax
push 0x83ca78
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0x7c], 0x4000000
mov eax, 0
setne al
push eax
push 0x83ca9c
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0x88], 0x10000
mov eax, 0
setne al
push eax
push 0x83cac0
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0x94], 0x100
mov eax, 0
setne al
push eax
push 0x83cae4
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0xa0], 0x80
mov eax, 0
setne al
push eax
push 0x83cb08
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0xac], 0x2000
mov eax, 0
setne al
push eax
push 0x83cb2c
push 0x83a2b0
call fcn.0046d484
add esp, 0x78
test dword [esp + 0x40], 0x8000000
mov eax, 0
setne al
push eax
push 0x83cb50
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0x4c], 0x1000000
mov eax, 0
setne al
push eax
push 0x83cb74
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0x58], 0x2000000
mov eax, 0
setne al
push eax
push 0x83cb98
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0x64], 0x40000
mov eax, 0
setne al
push eax
push 0x83cbbc
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0x70], 0x100000
mov eax, 0
setne al
push eax
push 0x83cbe0
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0x7c], 0x8000
mov eax, 0
setne al
push eax
push 0x83cc04
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0x88], 0x200000
mov eax, 0
setne al
push eax
push 0x83cc28
push 0x83a2b0
call fcn.0046d484
test byte [esp + 0x94], 0x10
mov eax, 0
setne al
push eax
push 0x83cc4c
push 0x83a2b0
call fcn.0046d484
push dword [esp + 0xa4]
push 0x83cc70
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0xb0], 0x80
mov eax, 0
setne al
push eax
push 0x83cc80
push 0x83a2b0
call fcn.0046d484
add esp, 0x78
test byte [esp + 0x44], 4
mov eax, 0
setne al
push eax
push 0x83cca0
push 0x83a2b0
call fcn.0046d484
test byte [esp + 0x50], 0x10
mov eax, 0
setne al
push eax
push 0x83ccc0
push 0x83a2b0
call fcn.0046d484
test byte [esp + 0x5c], 0x40
mov eax, 0
setne al
push eax
push 0x83cce0
push 0x83a2b0
call fcn.0046d484
test byte [esp + 0x68], 2
mov eax, 0
setne al
push eax
push 0x83cd00
push 0x83a2b0
call fcn.0046d484
test byte [esp + 0x74], 8
mov eax, 0
setne al
push eax
push 0x83cd20
push 0x83a2b0
call fcn.0046d484
test byte [esp + 0x80], 1
mov eax, 0
setne al
push eax
push 0x83cd40
push 0x83a2b0
call fcn.0046d484
test byte [esp + 0x8c], 0x20
mov eax, 0
setne al
push eax
push 0x83cd60
push 0x83a2b0
call fcn.0046d484
push dword [esp + 0x9c]
push 0x83cd80
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0xa8], 0x2000
mov eax, 0
setne al
push eax
push 0x83cd94
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0xb4], 0x1000
mov eax, 0
setne al
push eax
push 0x83cdac
push 0x83a2b0
call fcn.0046d484
add esp, 0x78
test dword [esp + 0x48], 0x800
mov eax, 0
setne al
push eax
push 0x83cdc4
push 0x83a2b0
call fcn.0046d484
test byte [esp + 0x54], 0x40
mov eax, 0
setne al
push eax
push 0x83cddc
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0x60], 0x100
mov eax, 0
setne al
push eax
push 0x83cdf4
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0x6c], 0x80
mov eax, 0
setne al
push eax
push 0x83ce0c
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0x78], 0x200
mov eax, 0
setne al
push eax
push 0x83ce24
push 0x83a2b0
call fcn.0046d484
test byte [esp + 0x84], 0x20
mov eax, 0
setne al
push eax
push 0x83ce3c
push 0x83a2b0
call fcn.0046d484
test byte [esp + 0x90], 8
mov eax, 0
setne al
push eax
push 0x83ce54
push 0x83a2b0
call fcn.0046d484
test byte [esp + 0x9c], 2
mov eax, 0
setne al
push eax
push 0x83ce6c
push 0x83a2b0
call fcn.0046d484
test byte [esp + 0xa8], 0x10
mov eax, 0
setne al
push eax
push 0x83ce84
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0xb4], 0x400
mov eax, 0
setne al
push eax
push 0x83ce9c
push 0x83a2b0
call fcn.0046d484
add esp, 0x78
test byte [esp + 0x48], 4
mov eax, 0
setne al
push eax
push 0x83ceb4
push 0x83a2b0
call fcn.0046d484
test byte [esp + 0x54], 1
mov eax, 0
setne al
push eax
push 0x83cecc
push 0x83a2b0
call fcn.0046d484
push dword [esp + 0x64]
push 0x83cee4
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0x70], 0x2000
mov eax, 0
setne al
push eax
push 0x83cd94
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0x7c], 0x1000
mov eax, 0
setne al
push eax
push 0x83cdac
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0x88], 0x800
mov eax, 0
setne al
push eax
push 0x83cdc4
push 0x83a2b0
call fcn.0046d484
test byte [esp + 0x94], 0x40
mov eax, 0
setne al
push eax
push 0x83cddc
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0xa0], 0x100
mov eax, 0
setne al
push eax
push 0x83cdf4
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0xac], 0x80
mov eax, 0
setne al
push eax
push 0x83ce0c
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0xb8], 0x200
mov eax, 0
setne al
push eax
push 0x83ce24
push 0x83a2b0
call fcn.0046d484
add esp, 0x78
test byte [esp + 0x4c], 0x20
mov eax, 0
setne al
push eax
push 0x83ce3c
push 0x83a2b0
call fcn.0046d484
test byte [esp + 0x58], 8
mov eax, 0
setne al
push eax
push 0x83ce54
push 0x83a2b0
call fcn.0046d484
test byte [esp + 0x64], 2
mov eax, 0
setne al
push eax
push 0x83ce6c
push 0x83a2b0
call fcn.0046d484
test byte [esp + 0x70], 0x10
mov eax, 0
setne al
push eax
push 0x83ce84
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0x7c], 0x400
mov eax, 0
setne al
push eax
push 0x83ce9c
push 0x83a2b0
call fcn.0046d484
test byte [esp + 0x88], 4
mov eax, 0
setne al
push eax
push 0x83ceb4
push 0x83a2b0
call fcn.0046d484
test byte [esp + 0x94], 1
mov eax, 0
setne al
push eax
push 0x83cecc
push 0x83a2b0
call fcn.0046d484
push dword [esp + 0xa4]
push 0x83cefc
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0xb0], 0x80
mov eax, 0
setne al
push eax
push 0x83cf10
push 0x83a2b0
call fcn.0046d484
test byte [esp + 0xbc], 4
mov eax, 0
setne al
push eax
push 0x83cf28
push 0x83a2b0
call fcn.0046d484
add esp, 0x78
test byte [esp + 0x50], 0x10
mov eax, 0
setne al
push eax
push 0x83cf40
push 0x83a2b0
call fcn.0046d484
test byte [esp + 0x5c], 0x40
mov eax, 0
setne al
push eax
push 0x83cf58
push 0x83a2b0
call fcn.0046d484
test byte [esp + 0x68], 2
mov eax, 0
setne al
push eax
push 0x83cf70
push 0x83a2b0
call fcn.0046d484
test byte [esp + 0x74], 8
mov eax, 0
setne al
push eax
push 0x83cf88
push 0x83a2b0
call fcn.0046d484
test byte [esp + 0x80], 1
mov eax, 0
setne al
push eax
push 0x83cfa0
push 0x83a2b0
call fcn.0046d484
test byte [esp + 0x8c], 0x20
mov eax, 0
setne al
push eax
push 0x83cfb8
push 0x83a2b0
call fcn.0046d484
push dword [esp + 0x9c]
push 0x83cfd0
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0xa8], 0x4000
mov eax, 0
setne al
push eax
push 0x83cfe4
push 0x83a2b0
call fcn.0046d484
test byte [esp + 0xb4], 8
mov eax, 0
setne al
push eax
push 0x83d00c
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0xc0], 0x80000
mov eax, 0
setne al
push eax
push 0x83d034
push 0x83a2b0
call fcn.0046d484
add esp, 0x78
test dword [esp + 0x54], 0x200
mov eax, 0
setne al
push eax
push 0x83d05c
push 0x83a2b0
call fcn.0046d484
push dword [esp + 0x64]
push 0x83d084
push 0x83a2b0
call fcn.0046d484
test byte [esp + 0x70], 4
mov eax, 0
setne al
push eax
push 0x83d098
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0x7c], 0x80
mov eax, 0
setne al
push eax
push 0x83d0b8
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0x88], 0x800
mov eax, 0
setne al
push eax
push 0x83d0d8
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0x94], 0x20000
mov eax, 0
setne al
push eax
push 0x83d0f8
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0xa0], 0x10000
mov eax, 0
setne al
push eax
push 0x83d118
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0xac], 0x4000
mov eax, 0
setne al
push eax
push 0x83d138
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0xb8], 0x8000
mov eax, 0
setne al
push eax
push 0x83d158
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0xc4], 0x100
mov eax, 0
setne al
push eax
push 0x83d178
push 0x83a2b0
call fcn.0046d484
add esp, 0x78
test dword [esp + 0x58], 0x200000
mov eax, 0
setne al
push eax
push 0x83d198
push 0x83a2b0
call fcn.0046d484
test byte [esp + 0x64], 1
mov eax, 0
setne al
push eax
push 0x83d1b8
push 0x83a2b0
call fcn.0046d484
test byte [esp + 0x70], 2
mov eax, 0
setne al
push eax
push 0x83d1d8
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0x7c], 0x400
mov eax, 0
setne al
push eax
push 0x83d1f8
push 0x83a2b0
call fcn.0046d484
test byte [esp + 0x88], 0x20
mov eax, 0
setne al
push eax
push 0x83d218
push 0x83a2b0
call fcn.0046d484
test byte [esp + 0x94], 0x40
mov eax, 0
setne al
push eax
push 0x83d238
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0xa0], 0x2000
mov eax, 0
setne al
push eax
push 0x83d258
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0xac], 0x40000
mov eax, 0
setne al
push eax
push 0x83d278
push 0x83a2b0
call fcn.0046d484
push dword [esp + 0xbc]
push 0x83d298
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0xc8], 0x1000000
mov eax, 0
setne al
push eax
push 0x83d2b4
push 0x83a2b0
call fcn.0046d484
add esp, 0x78
test dword [esp + 0x5c], 0x2000000
mov eax, 0
setne al
push eax
push 0x83d2d4
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0x68], 0x4000000
mov eax, 0
setne al
push eax
push 0x83d2f4
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0x74], 0x8000000
mov eax, 0
setne al
push eax
push 0x83d314
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0x80], 0x10000000
mov eax, 0
setne al
push eax
push 0x83d334
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0x8c], 0x100
mov eax, 0
setne al
push eax
push 0x83d354
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0x98], 0x200
mov eax, 0
setne al
push eax
push 0x83d374
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0xa4], 0x400
mov eax, 0
setne al
push eax
push 0x83d394
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0xb0], 0x800
mov eax, 0
setne al
push eax
push 0x83d3b4
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0xbc], 0x1000
mov eax, 0
setne al
push eax
push 0x83d3d4
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0xc8], 0x10000
mov eax, 0
setne al
push eax
push 0x83d3f4
push 0x83a2b0
call fcn.0046d484
add esp, 0x78
test dword [esp + 0x5c], 0x20000
mov eax, 0
setne al
push eax
push 0x83d414
push 0x83a2b0
call fcn.0046d484
push dword [esp + 0x6c]
push 0x83d434
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0x78], 0x1000000
mov eax, 0
setne al
push eax
push 0x83d2b4
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0x84], 0x2000000
mov eax, 0
setne al
push eax
push 0x83d2d4
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0x90], 0x4000000
mov eax, 0
setne al
push eax
push 0x83d2f4
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0x9c], 0x8000000
mov eax, 0
setne al
push eax
push 0x83d314
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0xa8], 0x10000000
mov eax, 0
setne al
push eax
push 0x83d334
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0xb4], 0x100
mov eax, 0
setne al
push eax
push 0x83d354
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0xc0], 0x200
mov eax, 0
setne al
push eax
push 0x83d374
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0xcc], 0x400
mov eax, 0
setne al
push eax
push 0x83d394
push 0x83a2b0
call fcn.0046d484
add esp, 0x78
test dword [esp + 0x60], 0x800
mov eax, 0
setne al
push eax
push 0x83d3b4
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0x6c], 0x1000
mov eax, 0
setne al
push eax
push 0x83d3d4
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0x78], 0x10000
mov eax, 0
setne al
push eax
push 0x83d3f4
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0x84], 0x20000
mov eax, 0
setne al
push eax
push 0x83d414
push 0x83a2b0
call fcn.0046d484
push dword [esp + 0x94]
push 0x83d454
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0xa0], 0x1000000
mov eax, 0
setne al
push eax
push 0x83d2b4
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0xac], 0x2000000
mov eax, 0
setne al
push eax
push 0x83d2d4
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0xb8], 0x4000000
mov eax, 0
setne al
push eax
push 0x83d2f4
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0xc4], 0x8000000
mov eax, 0
setne al
push eax
push 0x83d314
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0xd0], 0x10000000
mov eax, 0
setne al
push eax
push 0x83d334
push 0x83a2b0
call fcn.0046d484
add esp, 0x78
test dword [esp + 0x64], 0x100
mov eax, 0
setne al
push eax
push 0x83d354
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0x70], 0x200
mov eax, 0
setne al
push eax
push 0x83d374
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0x7c], 0x400
mov eax, 0
setne al
push eax
push 0x83d394
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0x88], 0x800
mov eax, 0
setne al
push eax
push 0x83d3b4
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0x94], 0x1000
mov eax, 0
setne al
push eax
push 0x83d3d4
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0xa0], 0x10000
mov eax, 0
setne al
push eax
push 0x83d3f4
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0xac], 0x20000
mov eax, 0
setne al
push eax
push 0x83d414
push 0x83a2b0
call fcn.0046d484
push dword [esp + 0xbc]
push 0x83d474
push 0x83a2b0
call fcn.0046d484
test byte [esp + 0xc8], 8
mov eax, 0
setne al
push eax
push 0x83d490
push 0x83a2b0
call fcn.0046d484
test byte [esp + 0xd4], 4
mov eax, 0
setne al
push eax
push 0x83d4ac
push 0x83a2b0
call fcn.0046d484
add esp, 0x78
test byte [esp + 0x68], 0x10
mov eax, 0
setne al
push eax
push 0x83d4c8
push 0x83a2b0
call fcn.0046d484
test byte [esp + 0x74], 2
mov eax, 0
setne al
push eax
push 0x83d4e4
push 0x83a2b0
call fcn.0046d484
test byte [esp + 0x80], 0x20
mov eax, 0
setne al
push eax
push 0x83d500
push 0x83a2b0
call fcn.0046d484
test byte [esp + 0x8c], 1
mov eax, 0
setne al
push eax
push 0x83d51c
push 0x83a2b0
call fcn.0046d484
push dword [esp + 0x9c]
push 0x83d538
push 0x83a2b0
call fcn.0046d484
test byte [esp + 0xa8], 8
mov eax, 0
setne al
push eax
push 0x83d490
push 0x83a2b0
call fcn.0046d484
test byte [esp + 0xb4], 4
mov eax, 0
setne al
push eax
push 0x83d4ac
push 0x83a2b0
call fcn.0046d484
test byte [esp + 0xc0], 0x10
mov eax, 0
setne al
push eax
push 0x83d4c8
push 0x83a2b0
call fcn.0046d484
test byte [esp + 0xcc], 2
mov eax, 0
setne al
push eax
push 0x83d4e4
push 0x83a2b0
call fcn.0046d484
test byte [esp + 0xd8], 0x20
mov eax, 0
setne al
push eax
push 0x83d500
push 0x83a2b0
call fcn.0046d484
add esp, 0x78
test byte [esp + 0x6c], 1
mov eax, 0
setne al
push eax
push 0x83d51c
push 0x83a2b0
call fcn.0046d484
push dword [esp + 0x7c]
push 0x83d558
push 0x83a2b0
call fcn.0046d484
test byte [esp + 0x88], 8
mov eax, 0
setne al
push eax
push 0x83d568
push 0x83a2b0
call fcn.0046d484
test byte [esp + 0x94], 0x20
mov eax, 0
setne al
push eax
push 0x83d584
push 0x83a2b0
call fcn.0046d484
test byte [esp + 0xa0], 4
mov eax, 0
setne al
push eax
push 0x83d5a0
push 0x83a2b0
call fcn.0046d484
test byte [esp + 0xac], 0x10
mov eax, 0
setne al
push eax
push 0x83d5bc
push 0x83a2b0
call fcn.0046d484
test byte [esp + 0xb8], 1
mov eax, 0
setne al
push eax
push 0x83d5d8
push 0x83a2b0
call fcn.0046d484
test byte [esp + 0xc4], 2
mov eax, 0
setne al
push eax
push 0x83d5f4
push 0x83a2b0
call fcn.0046d484
push dword [esp + 0x104]
push 0x83d610
push 0x83a2b0
call fcn.0046d484
test byte [esp + 0x110], 1
mov eax, 0
setne al
push eax
push 0x83d624
push 0x83a2b0
call fcn.0046d484
add esp, 0x78
test byte [esp + 0xa4], 2
mov eax, 0
setne al
push eax
push 0x83d634
push 0x83a2b0
call fcn.0046d484
test byte [esp + 0xb0], 4
mov eax, 0
setne al
push eax
push 0x83d644
push 0x83a2b0
call fcn.0046d484
test byte [esp + 0xbc], 8
mov eax, 0
setne al
push eax
push 0x83d654
push 0x83a2b0
call fcn.0046d484
test byte [esp + 0xc8], 0x10
mov eax, 0
setne al
push eax
push 0x83d664
push 0x83a2b0
call fcn.0046d484
test byte [esp + 0xd4], 0x20
mov eax, 0
setne al
push eax
push 0x83d674
push 0x83a2b0
call fcn.0046d484
test byte [esp + 0xe0], 0x40
mov eax, 0
setne al
push eax
push 0x83d684
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0xec], 0x80
mov eax, 0
setne al
push eax
push 0x83d694
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0xf8], 0x100
mov eax, 0
setne al
push eax
push 0x83d6a4
push 0x83a2b0
call fcn.0046d484
push dword [esp + 0x108]
push 0x83d6b4
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0x114], 0x80000
mov eax, 0
setne al
push eax
push 0x83d6c4
push 0x83a2b0
call fcn.0046d484
add esp, 0x78
test dword [esp + 0xa8], 0x100000
mov eax, 0
setne al
push eax
push 0x83d6e8
push 0x83a2b0
call fcn.0046d484
movzx edi, word [esp + 0xb4]
test edi, edi
mov eax, 0
seta al
push eax
push 0x83d70c
push 0x83a2b0
call fcn.0046d484
push dword [esp + 0xc4]
push 0x83d730
push 0x83a2b0
call fcn.0046d484
test byte [esp + 0xd0], 0x40
mov eax, 0
setne al
push eax
push 0x83d748
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0xdc], 0x80
mov eax, 0
setne al
push eax
push 0x83d768
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0xe8], 0x100
mov eax, 0
setne al
push eax
push 0x83d788
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0xf4], 0x400
mov eax, 0
setne al
push eax
push 0x83d7a8
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0x100], 0x8000
mov eax, 0
setne al
push eax
push 0x83d7c8
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0x10c], 0x800
mov eax, 0
setne al
push eax
push 0x83d7e8
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0x118], 0x2000
mov eax, 0
setne al
push eax
push 0x83d808
push 0x83a2b0
call fcn.0046d484
add esp, 0x78
test dword [esp + 0xac], 0x1000
mov eax, 0
setne al
push eax
push 0x83d828
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0xb8], 0x4000
mov eax, 0
setne al
push eax
push 0x83d848
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0xc4], 0x200000
mov eax, 0
setne al
push eax
push 0x83d868
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0xd0], 0x400000
mov eax, 0
setne al
push eax
push 0x83d888
push 0x83a2b0
call fcn.0046d484
test byte [esp + 0xdc], 1
mov eax, 0
setne al
push eax
push 0x83d8a8
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0xe8], 0x800000
mov eax, 0
setne al
push eax
push 0x83d8c8
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0xf4], 0x2000000
mov eax, 0
setne al
push eax
push 0x83d8e8
push 0x83a2b0
call fcn.0046d484
test byte [esp + 0x100], 8
mov eax, 0
setne al
push eax
push 0x83d908
push 0x83a2b0
call fcn.0046d484
test byte [esp + 0x10c], 0x10
mov eax, 0
setne al
push eax
push 0x83d928
push 0x83a2b0
call fcn.0046d484
test byte [esp + 0x118], 0x20
mov eax, 0
setne al
push eax
push 0x83d948
push 0x83a2b0
call fcn.0046d484
add esp, 0x78
test dword [esp + 0xac], 0x20000
mov eax, 0
setne al
push eax
push 0x83d968
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0xb8], 0x40000
mov eax, 0
setne al
push eax
push 0x83d988
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0xc4], 0x80000
mov eax, 0
setne al
push eax
push 0x83d9a8
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0xd0], 0x100000
mov eax, 0
setne al
push eax
push 0x83d9c8
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0xdc], 0x1000000
mov eax, 0
setne al
push eax
push 0x83d9e8
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0xe8], 0x10000
mov eax, 0
setne al
push eax
push 0x83da08
push 0x83a2b0
call fcn.0046d484
test byte [esp + 0xf4], 2
mov eax, 0
setne al
push eax
push 0x83da28
push 0x83a2b0
call fcn.0046d484
test byte [esp + 0x100], 4
mov eax, 0
setne al
push eax
push 0x83da48
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0x10c], 0x200
mov eax, 0
setne al
push eax
push 0x83da68
push 0x83a2b0
call fcn.0046d484
push dword [esp + 0x124]
push 0x83da88
push 0x83a2b0
call fcn.0046d484
add esp, 0x78
test byte [esp + 0xb8], 8
mov eax, 0
setne al
push eax
push 0x83daa4
push 0x83a2b0
call fcn.0046d484
test byte [esp + 0xc4], 0x20
mov eax, 0
setne al
push eax
push 0x83dac4
push 0x83a2b0
call fcn.0046d484
test byte [esp + 0xd0], 2
mov eax, 0
setne al
push eax
push 0x83dae4
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0xdc], 0x200
mov eax, 0
setne al
push eax
push 0x83db04
push 0x83a2b0
call fcn.0046d484
test byte [esp + 0xe8], 0x10
mov eax, 0
setne al
push eax
push 0x83db24
push 0x83a2b0
call fcn.0046d484
test byte [esp + 0xf4], 1
mov eax, 0
setne al
push eax
push 0x83db44
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0x100], 0x100
mov eax, 0
setne al
push eax
push 0x83db64
push 0x83a2b0
call fcn.0046d484
test byte [esp + 0x10c], 0x40
mov eax, 0
setne al
push eax
push 0x83db84
push 0x83a2b0
call fcn.0046d484
push dword [esp + 0x150]
push 0x83dba4
push 0x83a2b0
call fcn.0046d484
test byte [esp + 0x15c], 4
mov eax, 0
setne al
push eax
push 0x83dbb4
push 0x83a2b0
call fcn.0046d484
add esp, 0x78
test byte [esp + 0xf0], 8
mov eax, 0
setne al
push eax
push 0x83dbe0
push 0x83a2b0
call fcn.0046d484
test byte [esp + 0xfc], 0x10
mov eax, 0
setne al
push eax
push 0x83dc0c
push 0x83a2b0
call fcn.0046d484
test byte [esp + 0x108], 2
mov eax, 0
setne al
push eax
push 0x83dc38
push 0x83a2b0
call fcn.0046d484
test byte [esp + 0x114], 0x20
mov eax, 0
setne al
push eax
push 0x83dc64
push 0x83a2b0
call fcn.0046d484
test byte [esp + 0x120], 1
mov eax, 0
setne al
push eax
push 0x83dc90
push 0x83a2b0
call fcn.0046d484
test byte [esp + 0x12c], 0x40
mov eax, 0
setne al
push eax
push 0x83dcbc
push 0x83a2b0
call fcn.0046d484
push dword [esp + 0x150]
push 0x83dce8
push 0x83a2b0
call fcn.0046d484
test byte [esp + 0x15c], 1
mov eax, 0
setne al
push eax
push 0x83dcfc
push 0x83a2b0
call fcn.0046d484
test byte [esp + 0x168], 2
mov eax, 0
setne al
push eax
push 0x83dd1c
push 0x83a2b0
call fcn.0046d484
test byte [esp + 0x174], 4
mov eax, 0
setne al
push eax
push 0x83dd3c
push 0x83a2b0
call fcn.0046d484
add esp, 0x78
test byte [esp + 0x108], 8
mov eax, 0
setne al
push eax
push 0x83dd5c
push 0x83a2b0
call fcn.0046d484
test byte [esp + 0x114], 0x10
mov eax, 0
setne al
push eax
push 0x83dd7c
push 0x83a2b0
call fcn.0046d484
test byte [esp + 0x120], 0x20
mov eax, 0
setne al
push eax
push 0x83dd9c
push 0x83a2b0
call fcn.0046d484
test byte [esp + 0x12c], 0x40
mov eax, 0
setne al
push eax
push 0x83ddbc
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0x138], 0x80
mov eax, 0
setne al
push eax
push 0x83dddc
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0x144], 0x100
mov eax, 0
setne al
push eax
push 0x83ddfc
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0x150], 0x200
mov eax, 0
setne al
push eax
push 0x83de1c
push 0x83a2b0
call fcn.0046d484
push dword [esp + 0x164]
push 0x83de3c
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0x170], 0x100
mov eax, 0
setne al
push eax
push 0x83de5c
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0x17c], 0x1000000
mov eax, 0
setne al
push eax
push 0x83de70
push 0x83a2b0
call fcn.0046d484
add esp, 0x78
test dword [esp + 0x110], 0x200
mov eax, 0
setne al
push eax
push 0x83de84
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0x11c], 0x2000000
mov eax, 0
setne al
push eax
push 0x83de98
push 0x83a2b0
call fcn.0046d484
add esp, 0x18
mov dword [esp], 0x83a2b0
mov dword [esp + 4], 0x83deac
lea eax, [esp + 8]
mov edx, dword [esp + 0x114]
mov dword [eax], edx
mov ecx, dword [esp + 0x118]
mov dword [eax + 4], ecx
mov edi, dword [esp + 0x11c]
mov dword [eax + 8], edi
mov edx, dword [esp + 0x120]
mov dword [eax + 0xc], edx
call fcn.0046d484
test byte [esp + 0x114], 1
mov eax, 0
setne al
push eax
push 0x83debc
push 0x83a2b0
call fcn.0046d484
test byte [esp + 0x120], 0x18
mov eax, 0
setne al
push eax
push 0x83dee8
push 0x83a2b0
call fcn.0046d484
push 0
push 0x83df14
push 0x83a2b0
call fcn.0046d484
test byte [esp + 0x138], 0x20
mov eax, 0
setne al
push eax
push 0x83df40
push 0x83a2b0
call fcn.0046d484
test byte [esp + 0x144], 0xc
mov eax, 0
setne al
push eax
push 0x83df6c
push 0x83a2b0
call fcn.0046d484
test byte [esp + 0x150], 4
mov eax, 0
setne al
push eax
push 0x83df98
push 0x83a2b0
call fcn.0046d484
test byte [esp + 0x15c], 1
mov eax, 0
setne al
push eax
push 0x83dfc4
push 0x83a2b0
call fcn.0046d484
add esp, 0x54
mov dword [esp], 0x83a2b0
mov dword [esp + 4], 0x83dff0
lea eax, [esp + 8]
mov edx, dword [esp + 0x124]
mov dword [eax], edx
mov ecx, dword [esp + 0x128]
mov dword [eax + 4], ecx
mov edi, dword [esp + 0x12c]
mov dword [eax + 8], edi
mov edx, dword [esp + 0x130]
mov dword [eax + 0xc], edx
mov edx, dword [esp + 0x134]
mov dword [eax + 0x10], edx
call fcn.0046d484
test byte [esp + 0x124], 1
mov eax, 0
setne al
push eax
push 0x83e000
push 0x83a2b0
call fcn.0046d484
test byte [esp + 0x130], 2
mov eax, 0
setne al
push eax
push 0x83e02c
push 0x83a2b0
call fcn.0046d484
test byte [esp + 0x13c], 4
mov eax, 0
setne al
push eax
push 0x83e058
push 0x83a2b0
call fcn.0046d484
test byte [esp + 0x148], 8
mov eax, 0
setne al
push eax
push 0x83e084
push 0x83a2b0
call fcn.0046d484
test byte [esp + 0x154], 0x10
mov eax, 0
setne al
push eax
push 0x83e0b0
push 0x83a2b0
call fcn.0046d484
test byte [esp + 0x160], 0x18
mov eax, 0
setne al
push eax
push 0x83e0dc
push 0x83a2b0
call fcn.0046d484
push 0
push 0x83e108
push 0x83a2b0
call fcn.0046d484
test byte [esp + 0x178], 0x20
mov eax, 0
setne al
push eax
push 0x83e134
push 0x83a2b0
call fcn.0046d484
test byte [esp + 0x184], 0xc
mov eax, 0
setne al
push eax
push 0x83e160
push 0x83a2b0
call fcn.0046d484
test byte [esp + 0x190], 4
mov eax, 0
setne al
push eax
push 0x83e18c
push 0x83a2b0
call fcn.0046d484
add esp, 0x78
push 0
push 0x83e1b8
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0x130], 0x200
mov eax, 0
setne al
push eax
push 0x83e1e4
push 0x83a2b0
call fcn.0046d484
test byte [esp + 0x13c], 0x60
mov eax, 0
setne al
push eax
push 0x83e210
push 0x83a2b0
call fcn.0046d484
push dword [esp + 0x15c]
push 0x83e23c
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0x168], 0x1000000
mov eax, 0
setne al
push eax
push 0x83d2b4
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0x174], 0x2000000
mov eax, 0
setne al
push eax
push 0x83d2d4
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0x180], 0x4000000
mov eax, 0
setne al
push eax
push 0x83d2f4
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0x18c], 0x8000000
mov eax, 0
setne al
push eax
push 0x83d314
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0x198], 0x10000000
mov eax, 0
setne al
push eax
push 0x83d334
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0x1a4], 0x100
mov eax, 0
setne al
push eax
push 0x83d354
push 0x83a2b0
call fcn.0046d484
add esp, 0x78
test dword [esp + 0x138], 0x200
mov eax, 0
setne al
push eax
push 0x83d374
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0x144], 0x400
mov eax, 0
setne al
push eax
push 0x83d394
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0x150], 0x800
mov eax, 0
setne al
push eax
push 0x83d3b4
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0x15c], 0x1000
mov eax, 0
setne al
push eax
push 0x83d3d4
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0x168], 0x10000
mov eax, 0
setne al
push eax
push 0x83d3f4
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0x174], 0x20000
mov eax, 0
setne al
push eax
push 0x83d414
push 0x83a2b0
call fcn.0046d484
add esp, 0x48
fld dword [0x579d94]
mov eax, dword [esp + 0xe0]
cmp eax, 0xfffe0300
jb 0x40b98f
fstp st(0)
fld dword [0x579da0]
jmp 0x40b9af
cmp eax, 0xfffe0200
jb 0x40b9a0
fstp st(0)
fld dword [0x579d9c]
jmp 0x40b9af
cmp eax, 0xfffe0100
jb 0x40b9af
fstp st(0)
fld dword [0x579d98]
mov dword [esp], 0x83a2b0
mov dword [esp + 4], 0x83e25c
fstp qword [esp + 8]
call fcn.0046d484
mov eax, dword [esp + 0xe8]
cmp eax, 0xffff0300
jb 0x40b9dc
mov edi, 0x1e
jmp 0x40ba32
cmp eax, 0xffff0200
jb 0x40b9ea
mov edi, 0x14
jmp 0x40ba32
cmp eax, 0xffff0104
jb 0x40b9f8
mov edi, 0xe
jmp 0x40ba32
cmp eax, 0xffff0103
jb 0x40ba06
mov edi, 0xd
jmp 0x40ba32
cmp eax, 0xffff0102
jb 0x40ba14
mov edi, 0xc
jmp 0x40ba32
cmp eax, 0xffff0101
jb 0x40ba22
mov edi, 0xb
jmp 0x40ba32
cmp eax, 0xffff0100
jb 0x40ba30
mov edi, 0xa
jmp 0x40ba32
xor edi, edi
mov dword [esp], 0x83a2b0
mov dword [esp + 4], 0x83e278
mov dword [esp + 0x14c], edi
fild dword [esp + 0x14c]
fdiv qword [0x5799a0]
fstp qword [esp + 8]
call fcn.0046d484
mov dword [esp], 0x83a2b0
mov dword [esp + 4], 0x83e294
fld dword [esp + 0xec]
fstp qword [esp + 8]
call fcn.0046d484
push dword [esp + 0x80]
push 0x83e2b0
push 0x83a2b0
call fcn.0046d484
push dword [esp + 0xbc]
push 0x83e2c8
push 0x83a2b0
call fcn.0046d484
push dword [esp + 0xcc]
push 0x83e2e4
push 0x83a2b0
call fcn.0046d484
push dword [esp + 0x130]
push 0x83e304
push 0x83a2b0
call fcn.0046d484
push dword [esp + 0xa4]
push 0x83e31c
push 0x83a2b0
call fcn.0046d484
push dword [esp + 0xb4]
push 0x83e334
push 0x83a2b0
call fcn.0046d484
test dword [esp + 0x94], 0x2000
mov eax, 0
setne al
push eax
push 0x83e34c
push 0x83a2b0
call fcn.0046d484
test byte [esp + 0xac], 0x20
mov eax, 0
setne al
push eax
push 0x83e360
push 0x83a2b0
call fcn.0046d484
test byte [esp + 0xb8], 2
mov eax, 0
setne al
push eax
push 0x83e380
push 0x83a2b0
call fcn.0046d484
add esp, 0x6c
mov eax, dword [esp + 0x58]
test eax, eax
jne 0x40bb76
je 0x40bb7d
test ah, 1
jne 0x40bb7d
mov eax, 1
jmp 0x40bb7f
xor eax, eax
push eax
push 0x83e39c
push 0x83a2b0
call fcn.0046d484
add esp, 0xc
mov eax, dword [esp + 0x74]
mov dword [0x59b7e8], eax
mov edx, dword [esp + 0x78]
mov dword [0x59b7ec], edx
cmp edi, 0x14
jge 0x40bbc6
push 0x83e3e0
push 0x83e3c4
call fcn.00409024
mov eax, 1
add esp, 0x15c
pop edi
ret
xor eax, eax
add esp, 0x154
pop edi
ret