Function at 0x436e20
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push 0xffffffffffffffff
push 0x4d7490
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x58
push ebx
mov ebx, dword [esp + 0x80]
push ebp
mov ebp, dword [esp + 0x7c]
push esi
mov esi, dword [esp + 0x7c]
mov ecx, dword [esi + 8]
mov eax, dword [esi]
mov edx, dword [eax + 4]
push edi
push ecx
push 0
mov ecx, esi
call edx
mov eax, dword [esp + 0x7c]
mov edi, dword [eax + 8]
call fcn.00428880
mov edi, esi
mov ecx, dword [esp + 0x78]
mov edx, dword [ecx + 0x18]
push edx
call fcn.00435d70
mov esi, eax
cmp esi, 0xd
mov dword [esp + 0x2c], esi
mov dword [esp + 0x30], edx
jne 0x436f2e
test edx, edx
jne 0x436f2e
mov eax, dword [esp + 0x7c]
cmp dword [eax + 8], edx
mov dword [esp + 0x84], edx
jle 0x436e68
mov ecx, dword [esp + 0x78]
mov eax, dword [ecx + 0x18]
push eax
call fcn.00435d70
test edx, edx
mov dword [esp + 0x1c], eax
ja 0x436f81
jb 0x436ec6
cmp eax, 0x7fffffff
ja 0x436f81
mov ecx, dword [edi + 4]
cmp dword [edi + 8], ecx
jne 0x436efe
cmp ecx, 0x40
mov eax, 1
jl 0x436edf
mov eax, ecx
shr eax, 2
jmp 0x436ee9
cmp ecx, 8
jl 0x436ee9
mov eax, 8
mov esi, dword [esp + 0x80]
lea edi, [ecx + eax]
call fcn.00428880
mov eax, dword [esp + 0x1c]
mov edi, esi
mov edx, dword [edi + 8]
mov ecx, dword [edi + 0xc]
mov dword [ecx + edx*4], eax
mov eax, dword [esp + 0x84]
mov edx, dword [esp + 0x7c]
add dword [edi + 8], 1
add eax, 1
cmp eax, dword [edx + 8]
mov dword [esp + 0x84], eax
jl 0x436ea0
jmp 0x436e68
cmp esi, 0xa
jne 0x436f37
test edx, edx
je 0x436f86
cmp esi, 9
jne 0x436f40
test edx, edx
je 0x436f86
mov eax, esi
or eax, edx
je 0x436f86
mov ecx, dword [esp + 0x78]
mov esi, dword [ecx + 0x18]
push esi
call fcn.00435d70
mov ecx, dword [esi + 4]
mov dword [esp + 0x28], edx
mov edx, dword [esi + 8]
mov dword [esp + 0x24], eax
xor eax, eax
sub ecx, edx
cmp dword [esp + 0x28], eax
ja 0x436f81
jb 0x436f73
cmp dword [esp + 0x24], ecx
ja 0x436f81
mov eax, dword [esp + 0x24]
add edx, eax
mov dword [esi + 8], edx
jmp 0x436e68
call fcn.00435be0
cmp dword [edi + 8], 0
jne 0x437008
mov ecx, dword [esp + 0x7c]
cmp dword [ecx + 8], 0
mov dword [esp + 0x84], 0
jle 0x437008
mov ecx, dword [edi + 4]
cmp dword [edi + 8], ecx
jne 0x436fdd
cmp ecx, 0x40
mov eax, 1
jl 0x436fba
mov eax, ecx
shr eax, 2
jmp 0x436fc4
cmp ecx, 8
jl 0x436fc4
mov eax, 8
mov esi, dword [esp + 0x80]
lea edi, [ecx + eax]
call fcn.00428880
mov edx, dword [esp + 0x30]
mov edi, esi
mov esi, dword [esp + 0x2c]
mov eax, dword [edi + 8]
mov ecx, dword [edi + 0xc]
mov dword [ecx + eax*4], 1
mov eax, dword [esp + 0x84]
mov ecx, dword [esp + 0x7c]
add dword [edi + 8], 1
add eax, 1
cmp eax, dword [ecx + 8]
mov dword [esp + 0x84], eax
jl 0x436fa1
xor eax, eax
cmp dword [edi + 8], eax
mov dword [esp + 0x84], eax
jle 0x43714d
lea ebx, [ebx]
mov ecx, dword [edi + 0xc]
mov ecx, dword [ecx + eax*4]
test ecx, ecx
je 0x43713a
xor eax, eax
cmp ecx, 1
mov dword [esp + 0x24], eax
mov dword [esp + 0x28], eax
jbe 0x4370b7
add ecx, 0xffffffff
mov dword [esp + 0x18], ecx
cmp esi, 9
jne 0x4370b0
test edx, edx
jne 0x4370b0
mov edx, dword [esp + 0x78]
mov eax, dword [edx + 0x18]
push eax
call fcn.00435d70
mov ebx, eax
mov eax, dword [ebp + 4]
cmp dword [ebp + 8], eax
mov dword [esp + 0x20], edx
jne 0x43708f
cmp eax, 0x40
lea ecx, [esi - 8]
jl 0x437077
mov ecx, eax
shr ecx, 2
jmp 0x437081
cmp eax, 8
jl 0x437081
mov ecx, 8
lea edi, [eax + ecx]
mov esi, ebp
call fcn.00428880
mov edx, dword [esp + 0x20]
mov ecx, dword [ebp + 8]
mov eax, dword [ebp + 0xc]
mov esi, dword [esp + 0x2c]
mov dword [eax + ecx*8], ebx
mov dword [eax + ecx*8 + 4], edx
add dword [ebp + 8], 1
add dword [esp + 0x24], ebx
adc dword [esp + 0x28], edx
mov edx, dword [esp + 0x30]
sub dword [esp + 0x18], 1
jne 0x437044
mov ecx, dword [esp + 0x7c]
mov edx, dword [ecx + 0xc]
mov eax, dword [esp + 0x84]
mov edi, dword [edx + eax*4]
call fcn.00430000
mov ebx, eax
sub ebx, dword [esp + 0x24]
mov eax, dword [ebp + 4]
sbb edx, dword [esp + 0x28]
cmp dword [ebp + 8], eax
mov dword [esp + 0x14], edx
jne 0x43710c
cmp eax, 0x40
mov ecx, 1
jl 0x4370f4
mov ecx, eax
shr ecx, 2
jmp 0x4370fe
cmp eax, 8
jl 0x4370fe
mov ecx, 8
lea edi, [eax + ecx]
mov esi, ebp
call fcn.00428880
mov edx, dword [esp + 0x14]
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp + 8]
mov edi, dword [esp + 0x80]
mov esi, dword [esp + 0x2c]
mov dword [eax + ecx*8], ebx
mov ebx, dword [esp + 0x8c]
mov dword [eax + ecx*8 + 4], edx
add dword [ebp + 8], 1
mov eax, dword [esp + 0x84]
mov edx, dword [esp + 0x30]
add eax, 1
cmp eax, dword [edi + 8]
mov dword [esp + 0x84], eax
jl 0x437020
cmp esi, 9
jne 0x43716b
test edx, edx
jne 0x43716b
mov ecx, dword [esp + 0x78]
mov edx, dword [ecx + 0x18]
push edx
call fcn.00435d70
mov dword [esp + 0x2c], eax
mov dword [esp + 0x30], edx
mov eax, dword [esp + 0x7c]
mov edx, dword [eax + 8]
xor ecx, ecx
xor esi, esi
cmp edx, ecx
mov dword [esp + 0x18], ecx
mov dword [esp + 0x24], esi
jle 0x4371ae
mov edi, dword [edi + 0xc]
mov ebp, dword [edi + ecx*4]
cmp ebp, 1
jne 0x43719d
mov eax, dword [esp + 0x7c]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + ecx*4]
cmp byte [eax + 0x54], 0
jne 0x4371a1
add dword [esp + 0x18], ebp
add ecx, 1
add esi, ebp
cmp ecx, edx
jl 0x437185
mov dword [esp + 0x24], esi
mov edi, dword [esp + 0x88]
mov eax, dword [esp + 0x2c]
mov ecx, dword [esp + 0x78]
xor ebp, ebp
cmp eax, 0xa
jne 0x437447
cmp dword [esp + 0x30], ebp
jne 0x437447
mov dword [esp + 0x58], ebp
mov dword [esp + 0x5c], ebp
mov dword [esp + 0x60], ebp
mov dword [esp + 0x64], 1
mov dword [esp + 0x54], vtable.CRecordVector_bool_.0
mov dword [esp + 0x70], ebp
mov dword [esp + 0x44], ebp
mov dword [esp + 0x48], ebp
mov dword [esp + 0x4c], ebp
mov dword [esp + 0x50], 4
mov dword [esp + 0x40], vtable.CRecordVector_unsigned_int_.0
mov eax, dword [esp + 0x18]
lea edx, [esp + 0x54]
push edx
push eax
push ecx
lea eax, [esp + 0x4c]
mov byte [esp + 0x7c], 1
call fcn.00436790
mov ecx, dword [esp + 0x7c]
cmp dword [ecx + 8], ebp
mov dword [esp + 0x10], ebp
mov dword [esp + 0x84], ebp
jle 0x4373d7
nop
mov edx, dword [esp + 0x80]
mov eax, dword [edx + 0xc]
mov ecx, dword [esp + 0x84]
mov edx, dword [esp + 0x7c]
mov eax, dword [eax + ecx*4]
cmp eax, 1
mov edx, dword [edx + 0xc]
mov ebp, dword [edx + ecx*4]
jne 0x4372f6
cmp byte [ebp + 0x54], 0
je 0x4372fe
mov ecx, dword [edi + 4]
cmp dword [edi + 8], ecx
jne 0x4372a0
cmp ecx, 0x40
jl 0x437285
mov eax, ecx
shr eax, 2
jmp 0x43728f
cmp ecx, 8
jl 0x43728f
mov eax, 8
mov esi, dword [esp + 0x88]
lea edi, [ecx + eax]
call fcn.00428880
mov edi, esi
mov ecx, dword [edi + 8]
mov eax, dword [edi + 0xc]
mov byte [eax + ecx], 1
mov ecx, 1
add dword [edi + 8], ecx
mov eax, dword [ebx + 4]
cmp dword [ebx + 8], eax
mov ebp, dword [ebp + 0x50]
jne 0x4372e4
cmp eax, 0x40
jl 0x4372c9
mov ecx, eax
shr ecx, 2
jmp 0x4372d3
cmp eax, 8
jl 0x4372d3
mov ecx, 8
lea edi, [eax + ecx]
mov esi, ebx
call fcn.00428880
mov edi, dword [esp + 0x88]
mov edx, dword [ebx + 8]
mov eax, dword [ebx + 0xc]
mov dword [eax + edx*4], ebp
add dword [ebx + 8], 1
jmp 0x4373b9
test eax, eax
jbe 0x4373b9
mov dword [esp + 0x1c], eax
mov ecx, dword [esp + 0x60]
mov edx, dword [esp + 0x10]
mov al, byte [ecx + edx]
mov byte [esp + 0x8c], al
mov eax, dword [edi + 4]
cmp dword [edi + 8], eax
jne 0x437348
cmp eax, 0x40
mov ecx, 1
jl 0x43732d
mov ecx, eax
shr ecx, 2
jmp 0x437337
cmp eax, 8
jl 0x437337
mov ecx, 8
mov esi, dword [esp + 0x88]
lea edi, [eax + ecx]
call fcn.00428880
mov edi, esi
mov ecx, dword [edi + 8]
mov edx, dword [edi + 0xc]
mov al, byte [esp + 0x8c]
mov byte [ecx + edx], al
mov eax, dword [esp + 0x10]
mov edx, dword [esp + 0x4c]
mov ecx, 1
add dword [edi + 8], ecx
mov ebp, dword [edx + eax*4]
mov eax, dword [ebx + 4]
cmp dword [ebx + 8], eax
jne 0x43739f
cmp eax, 0x40
jl 0x43737f
mov ecx, eax
shr ecx, 2
jmp 0x437389
cmp eax, 8
jl 0x437389
mov ecx, 8
lea edi, [eax + ecx]
mov esi, ebx
call fcn.00428880
mov edi, dword [esp + 0x88]
mov ecx, 1
mov edx, dword [ebx + 8]
mov eax, dword [ebx + 0xc]
add dword [esp + 0x10], ecx
mov dword [eax + edx*4], ebp
add dword [ebx + 8], ecx
sub dword [esp + 0x1c], ecx
jne 0x437302
mov eax, dword [esp + 0x84]
mov ecx, dword [esp + 0x7c]
add eax, 1
cmp eax, dword [ecx + 8]
mov dword [esp + 0x84], eax
jl 0x437240
mov byte [esp + 0x70], 0
mov edx, dword [esp + 0x48]
push edx
xor esi, esi
mov ebp, vtable.CBaseRecordVector.0
push esi
lea ecx, [esp + 0x48]
mov dword [esp + 0x48], ebp
call dword [0x4eaef8]
mov eax, dword [esp + 0x4c]
push eax
call fcn.0049f9d0
mov dword [esp + 0x74], 0xffffffff
mov ecx, dword [esp + 0x60]
add esp, 4
push ecx
push esi
lea ecx, [esp + 0x5c]
mov dword [esp + 0x4c], esi
mov dword [esp + 0x50], esi
mov dword [esp + 0x54], esi
mov dword [esp + 0x5c], ebp
call dword [0x4eaef8]
mov edx, dword [esp + 0x60]
push edx
call fcn.0049f9d0
add esp, 4
mov dword [esp + 0x58], esi
mov dword [esp + 0x5c], esi
mov dword [esp + 0x60], esi
jmp 0x43747b
or eax, dword [esp + 0x30]
je 0x437499
mov esi, dword [ecx + 0x18]
push esi
call fcn.00435d70
mov ecx, dword [esi + 4]
mov dword [esp + 0x3c], edx
mov edx, dword [esi + 8]
sub ecx, edx
cmp dword [esp + 0x3c], ebp
ja 0x436f81
jb 0x437476
cmp eax, ecx
ja 0x436f81
add edx, eax
mov dword [esi + 8], edx
mov eax, dword [esp + 0x78]
mov ecx, dword [eax + 0x18]
push ecx
call fcn.00435d70
mov esi, dword [esp + 0x24]
mov dword [esp + 0x2c], eax
mov dword [esp + 0x30], edx
jmp 0x4371b5
cmp dword [edi + 8], ebp
jne 0x437503
mov eax, esi
mov ecx, edi
call fcn.00435680
mov eax, dword [ebx + 8]
mov edx, dword [ebx]
mov edx, dword [edx + 4]
push eax
push ebp
mov ecx, ebx
call edx
cmp esi, ebp
jle 0x437503
mov dword [esp + 0x7c], esi
mov eax, 1
mov ecx, dword [ebx + 4]
cmp dword [ebx + 8], ecx
jne 0x4374f1
cmp ecx, 0x40
jl 0x4374d6
mov eax, ecx
shr eax, 2
jmp 0x4374e0
cmp ecx, 8
jl 0x4374e0
mov eax, 8
lea edi, [ecx + eax]
mov esi, ebx
call fcn.00428880
xor ebp, ebp
mov eax, 1
mov ecx, dword [ebx + 8]
mov edx, dword [ebx + 0xc]
mov dword [edx + ecx*4], ebp
add dword [ebx + 8], eax
sub dword [esp + 0x7c], eax
jne 0x4374c2
mov ecx, dword [esp + 0x68]
pop edi
pop esi
pop ebp
mov dword fs:[0], ecx
pop ebx
add esp, 0x64
ret 0x18