Function at 0x4e2900
Capabilities:
Check for software breakpoints

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x55d700
mov eax, dword fs:[0]
push eax
sub esp, 0x48
push ebx
push esi
push edi
mov eax, dword [0x58829c]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x18], ecx
xor eax, eax
mov dword [ebp - 0x38], 0x5752f0
xor edi, edi
mov dword [ebp - 0x10], eax
xor ecx, ecx
mov dword [ebp - 0x20], edi
mov dword [ebp - 0x24], ecx
mov dword [ebp - 0x28], eax
mov esi, dword [ebp + 8]
xor ebx, ebx
mov dword [ebp - 4], ecx
cmp dword [esi + 0x10], ebx
jle 0x4e2d98
mov eax, dword [esi + 0x18]
mov eax, dword [eax + ebx*4]
mov dword [ebp + 8], eax
cmp dword [eax + 0x20], 0xc8
jl 0x4e29ac
cmp dword [ebp - 0x28], ecx
jne 0x4e297b
lea eax, [ecx + 0xa]
push eax
lea ecx, [ebp - 0x38]
call fcn.00436aa0
mov edi, dword [ebp - 0x20]
mov eax, dword [ebp - 0x28]
mov edx, ebx
mov ecx, dword [ebp + 8]
inc dword [ebp - 0x28]
mov dword [edi + eax*4], ecx
mov eax, dword [esi + 0x10]
dec eax
cmp ebx, eax
jge 0x4e29a5
mov eax, dword [esi + 0x18]
lea ecx, [eax + edx*4]
inc edx
mov eax, dword [ecx + 4]
mov dword [ecx], eax
mov eax, dword [esi + 0x10]
dec eax
cmp edx, eax
jl 0x4e2991
dec dword [esi + 0x10]
dec ebx
mov ecx, dword [ebp - 0x24]
inc ebx
cmp ebx, dword [esi + 0x10]
jl 0x4e2955
cmp dword [ebp - 0x28], 0
je 0x4e2d85
mov esi, 0xcb
xor ebx, ebx
mov dword [ebp - 0x1c], ebx
cmp dword [ebp - 0x28], ebx
jle 0x4e2d7b
nop
mov edx, dword [edi + ebx*4]
mov dword [ebp - 0x14], edx
mov ecx, dword [edx + 0x20]
cmp ecx, 0xc8
je 0x4e2bff
cmp ecx, 0xc9
je 0x4e2bff
cmp ecx, 0xcd
je 0x4e2bff
cmp ecx, 0xce
je 0x4e2bff
cmp ecx, 0xcf
je 0x4e2bff
cmp ecx, 0xd0
je 0x4e2bff
cmp ecx, 0xd1
je 0x4e2bff
cmp ecx, 0xd2
je 0x4e2bff
cmp ecx, 0xd3
je 0x4e2bff
cmp ecx, 0xd5
je 0x4e2bff
cmp ecx, 0xd6
je 0x4e2bff
cmp ecx, 0xca
je 0x4e2ba4
cmp ecx, 0xcb
je 0x4e2ba4
cmp ecx, 0xd4
jne 0x4e2b89
mov dword [ebp - 0x54], 0x5752f0
mov dword [ebp - 0x3c], 0
mov dword [ebp - 0x40], 0
mov dword [ebp - 0x44], 0
push ecx
lea eax, [ebp - 0x54]
mov byte [ebp - 4], 1
push eax
lea eax, [ebp - 0x38]
push eax
call fcn.004e2e20
mov esi, dword [ebp - 0x44]
mov al, 1
mov edi, dword [ebp - 0x3c]
mov byte [ebp + 0xb], al
cmp esi, 2
jl 0x4e2ad5
mov ecx, dword [ebp - 0x18]
push dword [edi + 4]
push dword [edi]
mov eax, dword [ecx]
mov eax, dword [eax + 0x24]
call eax
neg al
sbb al, al
and al, byte [ebp + 0xb]
mov ecx, dword [ebp + 0x18]
cmp esi, ecx
jl 0x4e2b70
test al, al
je 0x4e2b70
xor esi, esi
test ecx, ecx
jle 0x4e2b2e
mov ebx, dword [ebp + 0xc]
test esi, esi
jne 0x4e2afb
push dword [edi]
mov ecx, ebx
jmp 0x4e2b13
cmp esi, 1
jne 0x4e2b08
push dword [edi + 4]
mov ecx, dword [ebp + 0x10]
jmp 0x4e2b13
cmp esi, 2
jne 0x4e2b18
push dword [edi + 8]
mov ecx, dword [ebp + 0x14]
call fcn.00436970
push dword [edi + esi*4]
lea ecx, [ebp - 0x38]
call fcn.00491a80
mov ecx, dword [ebp + 0x18]
inc esi
cmp esi, ecx
jl 0x4e2af1
mov ebx, dword [ebp - 0x1c]
cmp ecx, 1
jne 0x4e2b50
mov esi, dword [ebp + 0xc]
mov ecx, dword [esi + 0x10]
mov eax, dword [esi + 0x18]
push dword [eax + ecx*4 - 4]
mov ecx, dword [ebp + 0x10]
call fcn.00436970
mov ecx, dword [esi + 0x10]
mov eax, dword [esi + 0x18]
jmp 0x4e2b5e
cmp ecx, 2
jne 0x4e2b6a
mov eax, dword [ebp + 0xc]
mov ecx, dword [eax + 0x10]
mov eax, dword [eax + 0x18]
push dword [eax + ecx*4 - 4]
mov ecx, dword [ebp + 0x14]
call fcn.00436970
dec ebx
inc dword [ebp - 0x10]
jmp 0x4e2b7a
push ebx
lea ecx, [ebp - 0x38]
call fcn.0048adc0
dec ebx
lea ecx, [ebp - 0x54]
mov byte [ebp - 4], 0
call fcn.00436930
mov edx, dword [ebp - 0x14]
cmp dword [edx + 0x20], 0xcc
jne 0x4e2d66
push ebx
lea ecx, [ebp - 0x38]
call fcn.0048adc0
jmp 0x4e2d65
mov eax, 0xca
cmp ecx, eax
push edx
cmove eax, esi
push eax
lea eax, [ebp - 0x38]
push eax
call fcn.004e2db0
mov esi, eax
test esi, esi
je 0x4e2b96
mov ecx, dword [ebp - 0x18]
mov edi, dword [ebp - 0x14]
push esi
push edi
mov eax, dword [ecx]
mov eax, dword [eax + 0x24]
call eax
test al, al
je 0x4e2b96
mov ecx, dword [ebp + 0xc]
push edi
call fcn.00436970
mov ecx, dword [ebp + 0x10]
push esi
call fcn.00436970
mov ecx, dword [ebp + 0x14]
push edi
call fcn.00436970
push ebx
lea ecx, [ebp - 0x38]
call fcn.0048adc0
dec ebx
inc dword [ebp - 0x10]
jmp 0x4e2d66
mov esi, dword [ebp + 0xc]
mov eax, dword [esi + 0x14]
cmp dword [esi + 0x10], eax
jne 0x4e2c60
add eax, 0xa
xor ecx, ecx
mov dword [ebp + 8], eax
mov edx, 4
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.00551afc
xor edx, edx
mov dword [esi + 4], eax
add esp, 4
cmp dword [esi + 0x14], edx
jle 0x4e2c45
mov eax, dword [esi + 0x18]
mov ecx, dword [esi + 4]
mov eax, dword [eax + edx*4]
mov dword [ecx + edx*4], eax
inc edx
cmp edx, dword [esi + 0x14]
jl 0x4e2c33
push dword [esi + 0x18]
call dword [sym.imp.msvcr120.dll_void___cdecl_operator_delete___void__]
mov eax, dword [esi + 4]
add esp, 4
mov edx, dword [ebp - 0x14]
mov dword [esi + 0x18], eax
mov eax, dword [ebp + 8]
mov dword [esi + 0x14], eax
mov ecx, dword [esi + 0x10]
mov eax, dword [esi + 0x18]
mov dword [eax + ecx*4], edx
inc dword [esi + 0x10]
mov esi, dword [ebp + 0x10]
mov eax, dword [esi + 0x14]
cmp dword [esi + 0x10], eax
jne 0x4e2ccd
add eax, 0xa
xor ecx, ecx
mov dword [ebp + 8], eax
mov edx, 4
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.00551afc
xor edx, edx
mov dword [esi + 4], eax
add esp, 4
cmp dword [esi + 0x14], edx
jle 0x4e2cb2
mov eax, dword [esi + 0x18]
mov ecx, dword [esi + 4]
mov eax, dword [eax + edx*4]
mov dword [ecx + edx*4], eax
inc edx
cmp edx, dword [esi + 0x14]
jl 0x4e2ca0
push dword [esi + 0x18]
call dword [sym.imp.msvcr120.dll_void___cdecl_operator_delete___void__]
mov eax, dword [esi + 4]
add esp, 4
mov edx, dword [ebp - 0x14]
mov dword [esi + 0x18], eax
mov eax, dword [ebp + 8]
mov dword [esi + 0x14], eax
mov ecx, dword [esi + 0x10]
mov eax, dword [esi + 0x18]
mov dword [eax + ecx*4], edx
inc dword [esi + 0x10]
mov esi, dword [ebp + 0x14]
mov eax, dword [esi + 0x14]
cmp dword [esi + 0x10], eax
jne 0x4e2d3d
add eax, 0xa
xor ecx, ecx
mov dword [ebp + 8], eax
mov edx, 4
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.00551afc
xor edx, edx
mov dword [esi + 4], eax
add esp, 4
cmp dword [esi + 0x14], edx
jle 0x4e2d22
lea ecx, [ecx]
mov eax, dword [esi + 0x18]
mov ecx, dword [esi + 4]
mov eax, dword [eax + edx*4]
mov dword [ecx + edx*4], eax
inc edx
cmp edx, dword [esi + 0x14]
jl 0x4e2d10
push dword [esi + 0x18]
call dword [sym.imp.msvcr120.dll_void___cdecl_operator_delete___void__]
mov eax, dword [esi + 4]
add esp, 4
mov edx, dword [ebp - 0x14]
mov dword [esi + 0x18], eax
mov eax, dword [ebp + 8]
mov dword [esi + 0x14], eax
mov ecx, dword [esi + 0x10]
mov eax, dword [esi + 0x18]
inc dword [ebp - 0x10]
mov dword [eax + ecx*4], edx
mov ecx, ebx
mov edx, dword [ebp - 0x28]
inc dword [esi + 0x10]
dec edx
cmp ebx, edx
jge 0x4e2d62
mov eax, dword [edi + ecx*4 + 4]
mov dword [edi + ecx*4], eax
inc ecx
cmp ecx, edx
jl 0x4e2d56
mov dword [ebp - 0x28], edx
dec ebx
mov edi, dword [ebp - 0x20]
inc ebx
mov esi, 0xcb
mov dword [ebp - 0x1c], ebx
cmp ebx, dword [ebp - 0x28]
jl 0x4e29d0
cmp dword [ebp - 0x28], 0
jne 0x4e29c1
cmp dword [ebp - 0x24], 0
je 0x4e2d95
push edi
call dword [sym.imp.msvcr120.dll_void___cdecl_operator_delete___void__]
add esp, 4
mov eax, dword [ebp - 0x10]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x14