Function at 0x452080
Capabilities:
Check for software breakpoints

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x49d8cb
mov eax, dword fs:[0]
push eax
sub esp, 0xb4
mov eax, dword [0x4cf06c]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov ebx, ecx
mov eax, dword [ebx + 0x64]
cmp eax, 0xc9
jne 0x4521bc
push 0xbf7
call fcn.00464620
mov ecx, dword [ebx + 0x7c]
push 0xbc4
mov dword [ecx + 0x9c], eax
mov ecx, ebx
call fcn.00464620
mov ecx, dword [ebx + 0x7c]
push 0xc07
mov dword [ecx + 0x98], eax
mov ecx, ebx
call fcn.00464620
mov ecx, dword [ebx + 0x7c]
push 0xbff
mov dword [ecx + 0xd0], eax
mov ecx, ebx
call fcn.00464620
mov ecx, dword [ebx + 0x7c]
push 0xc00
mov dword [ecx + 0xc8], eax
mov ecx, ebx
call fcn.00464620
mov ecx, dword [ebx + 0x7c]
push 0
push 0
push 0x400
mov dword [ecx + 0xcc], eax
mov ecx, ebx
push 0xc1f
call fcn.004647a0
mov ecx, dword [ebx + 0x7c]
push 0xc0b
mov dword [ecx + 0xb4], eax
mov ecx, ebx
call fcn.00464620
mov ecx, dword [ebx + 0x7c]
push 0xc01
mov dword [ecx + 0x124], eax
mov ecx, ebx
call fcn.00464620
mov ecx, dword [ebx + 0x7c]
push 0
push 0
push 0x147
mov dword [ecx + 0xc4], eax
mov ecx, ebx
push 0xd7e
call fcn.004647a0
test eax, eax
jne 0x45218b
or ecx, 0xffffffff
jmp 0x4521a7
cmp eax, 1
jne 0x452197
mov ecx, 0x411
jmp 0x4521a7
cmp eax, 2
mov ecx, 0x804
mov edx, 0x409
cmove ecx, edx
mov eax, dword [ebx + 0x7c]
mov dword [eax + 0xac], ecx
mov ecx, ebx
call fcn.00451eb0
jmp 0x45295b
cmp eax, 0xca
jne 0x452294
push 1
push 0
push 0xbc1
call fcn.00464410
mov ecx, dword [ebx + 0x7c]
push 1
push 0
push 0xd4e
mov dword [ecx + 0x20], eax
mov ecx, ebx
call fcn.00464410
mov ecx, dword [ebx + 0x7c]
push 1
push 0
push 0xd4f
mov dword [ecx + 0x28], eax
mov ecx, ebx
call fcn.00464410
mov ecx, dword [ebx + 0x7c]
push 0xc2a
mov dword [ecx + 0x2c], eax
mov ecx, ebx
call fcn.00464620
mov ecx, dword [ebx + 0x7c]
push 0xc2f
mov dword [ecx + 0xc0], eax
mov ecx, ebx
call fcn.00464620
mov ecx, dword [ebx + 0x7c]
neg eax
push 0xc26
sbb eax, eax
inc eax
mov dword [ecx + 0xe4], eax
mov ecx, ebx
call fcn.00464620
mov ecx, dword [ebx + 0x7c]
push 1
push 0
push 0xbbd
mov dword [ecx + 0x68], eax
mov ecx, ebx
call fcn.004644b0
mov ecx, dword [ebx + 0x7c]
push 1
push 0
push 0xbbe
mov dword [ecx + 0x50], eax
mov dword [ecx + 0x54], edx
mov ecx, ebx
call fcn.004644b0
mov ecx, dword [ebx + 0x7c]
push 0xc28
mov dword [ecx + 0x58], eax
mov dword [ecx + 0x5c], edx
mov ecx, ebx
call fcn.00464620
mov ecx, dword [ebx + 0x7c]
mov dword [ecx + 0x168], eax
jmp 0x45295b
cmp eax, 0xd5
jne 0x4522bc
push 0
push 0
push 0x147
push 0xd60
call fcn.004647c0
mov ecx, dword [ebx + 0x7c]
mov dword [ecx + 0xdc], eax
jmp 0x45295b
cmp eax, 0xcb
jne 0x452312
mov eax, dword [ebx + 0x7c]
push 0x40
add eax, 0x21c
push eax
push 0xc56
call fcn.00464390
mov eax, dword [ebx + 0x7c]
mov ecx, ebx
push 0x20
add eax, 0x25c
push eax
push 0xc58
call fcn.00464390
push 0
push 0
push 0x147
push 0xd39
mov ecx, ebx
call fcn.004647a0
mov ecx, dword [ebx + 0x7c]
mov dword [ecx + 0xa4], eax
jmp 0x45295b
cmp eax, 0xcc
jne 0x452347
push 1
push 0
push 0xd37
call fcn.00464410
mov ecx, dword [ebx + 0x7c]
push 0xc15
mov dword [ecx + 0x24], eax
mov ecx, ebx
call fcn.00464620
mov ecx, dword [ebx + 0x7c]
mov dword [ecx + 0x94], eax
jmp 0x45295b
cmp eax, 0xcd
jne 0x45242f
push 0xbf8
call fcn.00464620
mov ecx, dword [ebx + 0x7c]
push 0xc14
mov dword [ecx + 0x160], eax
mov ecx, ebx
call fcn.00464620
mov ecx, dword [ebx + 0x7c]
push 0xc20
mov dword [ecx + 0x90], eax
mov ecx, ebx
call fcn.00464620
mov ecx, dword [ebx + 0x7c]
push 0xc1e
mov dword [ecx + 0x10c], eax
mov ecx, ebx
call fcn.00464620
mov ecx, dword [ebx + 0x7c]
push 0xc24
mov dword [ecx + 0x6c], eax
mov ecx, ebx
call fcn.00464620
mov ecx, dword [ebx + 0x7c]
push 0x80
mov dword [ecx + 0x110], eax
lea eax, [ebp - 0x90]
push eax
push 0xd3e
mov ecx, ebx
call fcn.00464390
test eax, eax
je 0x4523ee
push 0xa
lea eax, [ebp - 0x90]
push 0
push eax
call fcn.00486c58
mov ecx, dword [ebx + 0x7c]
add esp, 0xc
mov dword [ecx + 0x60], eax
mov dword [ecx + 0x64], edx
push 0
push 0
push 0x147
push 0xd49
mov ecx, ebx
call fcn.004647a0
mov ecx, dword [ebx + 0x7c]
push 0
push 0
push 0x147
mov dword [ecx + 0x164], eax
mov ecx, ebx
push 0xd5b
call fcn.004647a0
mov ecx, dword [ebx + 0x7c]
mov dword [ecx + 0xe0], eax
jmp 0x45295b
cmp eax, 0xd4
jne 0x45248d
push 0xc08
call fcn.00464620
mov ecx, dword [ebx + 0x7c]
push 0xc1c
mov dword [ecx + 0xfc], eax
mov ecx, ebx
call fcn.00464620
mov ecx, dword [ebx + 0x7c]
push 0xc22
mov dword [ecx + 0x100], eax
mov ecx, ebx
call fcn.00464620
mov ecx, dword [ebx + 0x7c]
push 0xc2b
mov dword [ecx + 0x104], eax
mov ecx, ebx
call fcn.00464620
mov ecx, dword [ebx + 0x7c]
mov dword [ecx + 0x108], eax
jmp 0x45295b
cmp eax, 0xd3
jne 0x452541
call fcn.0043a2f0
cmp dword [eax + 0x14f8], 1
jne 0x4524c2
push 0
push 0
push 0x147
push 0xd4a
call fcn.004647a0
mov ecx, dword [ebx + 0x7c]
mov dword [ecx + 0x188], eax
push 0
push 0
push 0x147
push 0xd48
mov ecx, ebx
call fcn.004647a0
push 0
push eax
push 0x150
push 0xd48
mov ecx, ebx
call fcn.004647a0
mov ecx, dword [ebx + 0x7c]
push 0
push 0
push 0x147
mov dword [ecx + 0xf0], eax
mov ecx, ebx
push 0xd4b
call fcn.004647a0
mov ecx, dword [ebx + 0x7c]
push 0xc1d
mov dword [ecx + 0x18c], eax
mov ecx, ebx
call fcn.00464620
mov ecx, dword [ebx + 0x7c]
push 0xc2d
mov dword [ecx + 0x190], eax
mov ecx, ebx
call fcn.00464620
mov ecx, dword [ebx + 0x7c]
mov dword [ecx + 0x194], eax
jmp 0x45295b
cmp eax, 0xce
jne 0x452575
push 0xc17
call fcn.00464620
mov ecx, dword [ebx + 0x7c]
push 0xc0c
mov dword [ecx + 0xf4], eax
mov ecx, ebx
call fcn.00464620
mov ecx, dword [ebx + 0x7c]
mov dword [ecx + 0xf8], eax
jmp 0x45295b
cmp eax, 0xcf
jne 0x4525fa
push 1
push 0
push 0xbc2
call fcn.00464410
mov ecx, dword [ebx + 0x7c]
mov dword [ecx + 0x74], eax
cmp eax, 0x3e8
jle 0x4525a1
mov eax, dword [ebx + 0x7c]
mov dword [eax + 0x74], 0x3e8
push 0xbc0
mov ecx, ebx
call fcn.00464620
mov ecx, dword [ebx + 0x7c]
push 0xbc6
mov dword [ecx + 0x140], eax
mov ecx, ebx
call fcn.00464620
mov ecx, dword [ebx + 0x7c]
push 0x8d9
mov dword [ecx + 0x144], eax
mov ecx, ebx
call fcn.00464620
mov ecx, dword [ebx + 0x7c]
push 0x8d8
mov dword [ecx + 0x14c], eax
mov ecx, ebx
call fcn.00464620
mov ecx, dword [ebx + 0x7c]
mov dword [ecx + 0x150], eax
jmp 0x45295b
cmp eax, 0xd0
jne 0x452611
mov ecx, dword [ebx + 0x88]
call fcn.00453d80
jmp 0x45295b
cmp eax, 0xd1
jne 0x452630
push 0x8da
call fcn.00464620
mov ecx, dword [ebx + 0x7c]
mov dword [ecx + 0x128], eax
jmp 0x45295b
cmp eax, 0xd6
jne 0x45286b
call fcn.0043a2f0
xor edi, edi
mov dword [ebp - 0xa4], edi
mov esi, dword [eax + 0x1bf8]
mov dword [ebp - 0x98], esi
mov eax, dword [esi]
test eax, eax
je 0x45295b
mov ecx, esi
cmp eax, 0x1f
je 0x45284f
cmp eax, 0x20
je 0x45284f
push 0
push edi
push 0x187
push 0xd7f
mov ecx, ebx
call fcn.004647c0
push ecx
push dword [esi + 8]
test eax, eax
je 0x4526f6
lea ecx, [ebp - 0xb0]
call fcn.00411cb0
mov dword [ebp - 4], 0
lea eax, [ebp - 0xb0]
push dword [ebp - 0xa8]
mov ecx, dword [ebx + 0x7c]
push eax
add ecx, 0x2e0
lea eax, [ebp - 0xc0]
push ecx
push eax
call fcn.00412300
mov dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0xb0]
test eax, eax
je 0x4526e7
push eax
call fcn.0047d4ed
add esp, 4
mov dword [ebp - 0xb0], 0
mov dword [ebp - 0xac], 0xffffffff
jmp 0x452849
lea ecx, [ebp - 0xa0]
call fcn.00411cb0
mov eax, dword [ebx + 0x7c]
add eax, 0x2e0
mov dword [ebp - 0xa8], eax
mov ecx, dword [eax]
mov edi, ecx
mov esi, dword [ecx + 4]
lea edx, [ecx + 4]
mov eax, dword [ebp - 0xa0]
mov dword [ebp - 0x94], ecx
mov dword [ebp - 0xb4], edx
cmp byte [esi + 0xd], 0
jne 0x45279f
jmp 0x452739
mov eax, dword [ebp - 0xa0]
test eax, eax
mov edx, 0x4c2758
mov ecx, 0x4c2758
cmovne edx, eax
mov eax, dword [esi + 0x10]
test eax, eax
cmovne ecx, eax
call fcn.004122a0
test eax, eax
jns 0x45275e
mov esi, dword [esi + 8]
jmp 0x452793
cmp byte [edi + 0xd], 0
je 0x45278b
mov eax, dword [esi + 0x10]
mov edx, 0x4c2758
test eax, eax
mov ecx, 0x4c2758
cmovne edx, eax
mov eax, dword [ebp - 0xa0]
test eax, eax
cmovne ecx, eax
call fcn.004122a0
test eax, eax
cmovs edi, esi
mov dword [ebp - 0x94], esi
mov esi, dword [esi]
cmp byte [esi + 0xd], 0
je 0x452733
mov edx, dword [ebp - 0xb4]
cmp byte [edi + 0xd], 0
cmove edx, edi
mov esi, dword [edx]
cmp byte [esi + 0xd], 0
jne 0x4527e5
nop
mov eax, dword [esi + 0x10]
mov edx, 0x4c2758
test eax, eax
mov ecx, 0x4c2758
cmovne edx, eax
mov eax, dword [ebp - 0xa0]
test eax, eax
cmovne ecx, eax
call fcn.004122a0
test eax, eax
jns 0x4527dc
mov edi, esi
mov esi, dword [esi]
jmp 0x4527df
mov esi, dword [esi + 8]
cmp byte [esi + 0xd], 0
je 0x4527b0
mov esi, dword [ebp - 0x94]
mov dword [ebp - 0x94], esi
cmp esi, edi
je 0x452808
lea ecx, [ebp - 0x94]
call fcn.00411b20
cmp dword [ebp - 0x94], edi
jne 0x4527f5
mov ecx, dword [ebp - 0xa8]
lea eax, [ebp - 0xb8]
push edi
push esi
push eax
call fcn.00411d80
mov eax, dword [ebp - 0xa0]
test eax, eax
je 0x452839
push eax
call fcn.0047d4ed
add esp, 4
mov dword [ebp - 0xa0], 0
mov edi, dword [ebp - 0xa4]
mov dword [ebp - 0x9c], 0xffffffff
mov ecx, dword [ebp - 0x98]
inc edi
mov dword [ebp - 0xa4], edi
lea eax, [edi + edi*4]
lea esi, [ecx + eax*4]
mov eax, dword [esi]
test eax, eax
jne 0x452660
jmp 0x45295b
cmp eax, 0xd2
jne 0x45295b
push 0xbeb
call fcn.00464620
test eax, eax
mov eax, dword [ebx + 0x7c]
je 0x452890
or dword [eax + 0x170], 1
jmp 0x45289a
mov dword [eax + 0x170], 0
push 0xbe9
mov ecx, ebx
call fcn.00464620
mov ecx, dword [ebx + 0x7c]
push 0xc57
mov dword [ecx + 0x1b8], eax
mov ecx, ebx
call fcn.00464620
mov ecx, dword [ebx + 0x7c]
neg eax
push 0xbee
sbb eax, eax
inc eax
mov dword [ecx + 0xd8], eax
mov ecx, ebx
call fcn.00464620
mov ecx, dword [ebx + 0x7c]
push 0x8df
mov dword [ecx + 0x16c], eax
mov ecx, ebx
call fcn.00464620
test eax, eax
mov eax, dword [ebx + 0x7c]
je 0x4528fa
or dword [eax + 0x12c], 1
jmp 0x452901
and dword [eax + 0x12c], 0xfffffffe
push 0x8db
mov ecx, ebx
call fcn.00464620
test eax, eax
je 0x452915
xor eax, eax
jmp 0x452928
push 0x8dc
mov ecx, ebx
call fcn.00464620
neg eax
sbb eax, eax
add eax, 2
mov ecx, dword [ebx + 0x7c]
push 0x8e0
mov dword [ecx + 0x138], eax
mov ecx, ebx
call fcn.00464620
mov ecx, dword [ebx + 0x7c]
push 0xd4c
mov dword [ecx + 0x134], eax
mov ecx, ebx
call fcn.00464620
mov ecx, dword [ebx + 0x7c]
mov dword [ecx + 0x15c], eax
mov eax, 1
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.0047d39f
mov esp, ebp
pop ebp
ret