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

Disassembly:
push 0xffffffffffffffff
push 0x685b34
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0xa8
push ebx
push ebp
push esi
push edi
mov edi, dword [esp + 0xc8]
mov ebp, ecx
lea ecx, [esp + 0x10]
mov eax, dword [edi + 4]
push ecx
push edi
mov ecx, ebp
mov dword [esp + 0x18], eax
call fcn.005069a0
test eax, eax
je 0x507835
lea ecx, [esp + 0x94]
call fcn.006086f6
mov edx, dword [edi]
xor esi, esi
mov dword [ebp + 0x38e0], edx
mov eax, dword [edi]
cmp eax, 0x7e
mov dword [esp + 0xc0], esi
ja case.0x506aa4.26
xor ecx, ecx
mov cl, byte [eax + 0x5078bc]
jmp dword [ecx*4 + 0x507850]
mov eax, dword [esp + 0x10]
mov edx, dword [edi + 0x10]
test eax, eax
push edx
je 0x506af6
lea ecx, [esp + 0x64]
call sub.MFC42u.DLL_CString::CString_6
mov ecx, dword [esp + 0x10]
lea eax, [esp + 0x60]
push eax
push ecx
lea ecx, [ebp + 0x2c90]
mov byte [esp + 0xc8], 1
call fcn.00542500
mov esi, eax
mov byte [esp + 0xc0], 0
dec esi
lea ecx, [esp + 0x60]
neg esi
sbb esi, esi
inc esi
jmp 0x5077b7
lea ecx, [esp + 0x50]
call sub.MFC42u.DLL_CString::CString_6
lea eax, [esp + 0x4c]
push 1
push eax
mov ecx, ebp
mov byte [esp + 0xc8], 2
call fcn.004e1780
mov esi, eax
mov byte [esp + 0xc0], 0
lea ecx, [esp + 0x4c]
jmp 0x5077b7
mov eax, dword [esp + 0x10]
push 0
test eax, eax
je 0x506b4f
mov ecx, dword [edi + 0x10]
push ecx
push eax
lea ecx, [ebp + 0x2c90]
call fcn.00542cc0
mov esi, eax
dec esi
neg esi
sbb esi, esi
inc esi
jmp case.0x506aa4.16
mov edx, dword [edi + 0x10]
mov ecx, ebp
push edx
call fcn.004e19f0
mov esi, eax
jmp case.0x506aa4.16
mov eax, dword [esp + 0x10]
test eax, eax
je 0x506b86
mov ecx, dword [edi + 0x10]
push ecx
push eax
lea ecx, [ebp + 0x2c90]
call fcn.005422d0
mov esi, eax
dec esi
neg esi
sbb esi, esi
inc esi
jmp case.0x506aa4.16
mov edx, dword [edi + 0x10]
mov ecx, ebp
push edx
call fcn.004e0df0
mov esi, eax
jmp case.0x506aa4.16
mov eax, dword [esp + 0x10]
test eax, eax
mov eax, dword [edi + 0x10]
push eax
je 0x506bec
lea ecx, [esp + 0x90]
call sub.MFC42u.DLL_CString::CString_6
mov edx, dword [esp + 0x10]
lea ecx, [esp + 0x8c]
push ecx
push edx
lea ecx, [ebp + 0x2c90]
mov byte [esp + 0xc8], 3
call fcn.005446d0
mov esi, eax
mov byte [esp + 0xc0], 0
dec esi
lea ecx, [esp + 0x8c]
neg esi
sbb esi, esi
inc esi
jmp 0x5077b7
lea ecx, [esp + 0x94]
call sub.MFC42u.DLL_CString::CString_6
lea ecx, [esp + 0x90]
mov byte [esp + 0xc0], 4
push ecx
mov ecx, ebp
call fcn.004e5530
mov esi, eax
mov byte [esp + 0xc0], 0
lea ecx, [esp + 0x90]
jmp 0x5077b7
mov eax, dword [esp + 0x10]
mov edx, dword [edi + 0x10]
test eax, eax
push edx
je 0x506cbd
lea ecx, [esp + 0x44]
call sub.MFC42u.DLL_CString::CString_6
mov ecx, dword [esp + 0x10]
lea eax, [esp + 0x40]
push eax
push ecx
mov ecx, dword [esp + 0xd8]
mov byte [esp + 0xc8], 5
call fcn.005e4780
test eax, eax
lea ecx, [esp + 0x40]
mov byte [esp + 0xc0], 0
sete bl
call sub.MFC42u.DLL_CString::CString
test bl, bl
je case.0x506aa4.16
mov edx, dword [edi + 0x10]
lea ecx, [esp + 0x70]
push edx
call sub.MFC42u.DLL_CString::CString_6
mov ecx, dword [esp + 0x10]
lea eax, [esp + 0x70]
push eax
push ecx
lea ecx, [ebp + 0x2c90]
mov byte [esp + 0xc8], 6
call fcn.00544810
mov esi, eax
mov byte [esp + 0xc0], 0
dec esi
lea ecx, [esp + 0x70]
neg esi
sbb esi, esi
inc esi
jmp 0x5077b7
lea ecx, [esp + 0x4c]
call sub.MFC42u.DLL_CString::CString_6
lea eax, [esp + 0x48]
mov ecx, ebp
push eax
mov byte [esp + 0xc4], 7
call fcn.004e57b0
mov esi, eax
mov byte [esp + 0xc0], 0
lea ecx, [esp + 0x48]
jmp 0x5077b7
mov eax, dword [esp + 0x10]
test eax, eax
je 0x506d2f
mov ecx, dword [edi + 0x10]
push ecx
mov ecx, dword [esp + 0xd4]
push eax
call fcn.005e4940
test eax, eax
jne case.0x506aa4.16
mov edx, dword [edi + 0x10]
mov eax, dword [esp + 0x10]
push edx
push eax
lea ecx, [ebp + 0x2c90]
call fcn.00543f10
mov esi, eax
dec esi
neg esi
sbb esi, esi
inc esi
jmp case.0x506aa4.16
mov ecx, dword [edi + 0x10]
push 0
push ecx
mov ecx, ebp
call fcn.004e4030
mov esi, eax
jmp case.0x506aa4.16
mov edx, dword [edi + 0x18]
mov eax, dword [edi + 0x14]
mov ecx, dword [edi + 0x10]
push edx
push eax
push ecx
lea ecx, [esp + 0x20]
call fcn.004a4030
mov eax, dword [esp + 0x10]
push 0
test eax, eax
je 0x506d80
lea edx, [esp + 0x18]
lea ecx, [ebp + 0x2c90]
push edx
push eax
call fcn.00544050
mov esi, eax
dec esi
neg esi
sbb esi, esi
inc esi
jmp case.0x506aa4.16
lea eax, [esp + 0x18]
mov ecx, ebp
push eax
call fcn.004e4a30
mov esi, eax
jmp case.0x506aa4.16
mov ecx, dword [edi + 0x18]
mov edx, dword [edi + 0x14]
mov eax, dword [edi + 0x10]
push ecx
push edx
push eax
lea ecx, [esp + 0x20]
call fcn.004a4030
mov eax, dword [esp + 0x10]
push 0
test eax, eax
je 0x506dd0
lea ecx, [esp + 0x18]
push ecx
push eax
lea ecx, [ebp + 0x2c90]
call fcn.005441c0
mov esi, eax
dec esi
neg esi
sbb esi, esi
inc esi
jmp case.0x506aa4.16
lea edx, [esp + 0x18]
mov ecx, ebp
push edx
call fcn.004e4d20
mov esi, eax
jmp case.0x506aa4.16
mov eax, dword [esp + 0x10]
push 0x738574
test eax, eax
je 0x506e78
lea ecx, [esp + 0x34]
call fcn.0060c3c0
mov eax, dword [edi + 0x10]
mov bl, 8
push eax
lea ecx, [esp + 0x8c]
mov byte [esp + 0xc4], bl
call sub.MFC42u.DLL_CString::CString_6
mov eax, dword [esp + 0x10]
lea ecx, [esp + 0x30]
lea edx, [esp + 0x88]
push ecx
push edx
push eax
lea ecx, [ebp + 0x2c90]
mov byte [esp + 0xcc], 9
call fcn.00542370
mov esi, eax
lea ecx, [esp + 0x88]
dec esi
mov byte [esp + 0xc0], bl
neg esi
sbb esi, esi
inc esi
call sub.MFC42u.DLL_CString::CString
lea ecx, [esp + 0x30]
mov byte [esp + 0xc0], 0xa
call fcn.0060c4c0
mov byte [esp + 0xc0], 0
lea ecx, [esp + 0x30]
jmp 0x5077b7
lea ecx, [esp + 0x30]
call fcn.0060c3c0
mov ecx, dword [edi + 0x10]
mov bl, 0xb
push ecx
lea ecx, [esp + 0x54]
mov byte [esp + 0xc4], bl
call sub.MFC42u.DLL_CString::CString_6
lea edx, [esp + 0x2c]
lea eax, [esp + 0x50]
push edx
push eax
mov ecx, ebp
mov byte [esp + 0xc8], 0xc
call fcn.004e15c0
lea ecx, [esp + 0x50]
mov esi, eax
mov byte [esp + 0xc0], bl
call sub.MFC42u.DLL_CString::CString
lea ecx, [esp + 0x2c]
mov byte [esp + 0xc0], 0xd
call fcn.0060c4c0
mov byte [esp + 0xc0], 0
lea ecx, [esp + 0x2c]
jmp 0x5077b7
mov eax, dword [esp + 0x10]
test eax, eax
je 0x506f0b
xor ecx, ecx
mov cl, byte [edi + 0x10]
push ecx
push eax
lea ecx, [ebp + 0x2c90]
call fcn.00542640
mov esi, eax
dec esi
neg esi
sbb esi, esi
inc esi
jmp case.0x506aa4.16
xor edx, edx
mov ecx, ebp
mov dl, byte [edi + 0x10]
push edx
call fcn.004e1fc0
mov esi, eax
jmp case.0x506aa4.16
mov eax, dword [esp + 0x10]
test eax, eax
je 0x506f46
xor ecx, ecx
mov cl, byte [edi + 0x10]
push ecx
push eax
lea ecx, [ebp + 0x2c90]
call fcn.005426d0
mov esi, eax
dec esi
neg esi
sbb esi, esi
inc esi
jmp case.0x506aa4.16
xor edx, edx
mov ecx, ebp
mov dl, byte [edi + 0x10]
push edx
call fcn.004e20f0
mov esi, eax
jmp case.0x506aa4.16
mov eax, dword [esp + 0x10]
push 0
test eax, eax
je 0x506f81
mov ecx, dword [edi + 0x10]
push ecx
push eax
lea ecx, [ebp + 0x2c90]
call fcn.00542da0
mov esi, eax
dec esi
neg esi
sbb esi, esi
inc esi
jmp case.0x506aa4.16
mov edx, dword [edi + 0x10]
mov ecx, ebp
push edx
call fcn.004e1d30
mov esi, eax
jmp case.0x506aa4.16
mov eax, dword [esp + 0x10]
test eax, eax
mov eax, dword [edi + 0x10]
push eax
je 0x506fde
lea ecx, [esp + 0x7c]
call sub.MFC42u.DLL_CString::CString_6
mov edx, dword [esp + 0x10]
lea ecx, [esp + 0x78]
push ecx
push edx
lea ecx, [ebp + 0x2c90]
mov byte [esp + 0xc8], 0xe
call fcn.00544e30
mov esi, eax
mov byte [esp + 0xc0], 0
dec esi
lea ecx, [esp + 0x78]
neg esi
sbb esi, esi
inc esi
jmp 0x5077b7
lea ecx, [esp + 0x5c]
call sub.MFC42u.DLL_CString::CString_6
lea ecx, [esp + 0x58]
mov byte [esp + 0xc0], 0xf
push ecx
mov ecx, ebp
call fcn.004e6510
mov esi, eax
mov byte [esp + 0xc0], 0
lea ecx, [esp + 0x58]
jmp 0x5077b7
mov al, byte [edi + 0x18]
mov ecx, dword [edi + 0x10]
xor edx, edx
test al, al
mov eax, dword [edi + 0x14]
setne dl
push edx
push eax
push ecx
lea ecx, [esp + 0x20]
call fcn.004a4030
mov eax, dword [esp + 0x10]
push 0
test eax, eax
je 0x507052
lea edx, [esp + 0x18]
lea ecx, [ebp + 0x2c90]
push edx
push eax
call fcn.00543fa0
mov esi, eax
dec esi
neg esi
sbb esi, esi
inc esi
jmp case.0x506aa4.16
lea eax, [esp + 0x18]
mov ecx, ebp
push eax
call fcn.004e4570
mov esi, eax
jmp case.0x506aa4.16
mov eax, dword [esp + 0x10]
mov ecx, dword [edi + 0x10]
test eax, eax
push ecx
je 0x5070b9
lea ecx, [esp + 0xac]
call sub.MFC42u.DLL_CString::CString_6
mov eax, dword [esp + 0x10]
lea edx, [esp + 0xa8]
push edx
push eax
lea ecx, [ebp + 0x2c90]
mov byte [esp + 0xc8], 0x10
call fcn.00544770
mov esi, eax
mov byte [esp + 0xc0], 0
dec esi
lea ecx, [esp + 0xa8]
neg esi
sbb esi, esi
inc esi
jmp 0x5077b7
lea ecx, [esp + 0x38]
call sub.MFC42u.DLL_CString::CString_6
lea edx, [esp + 0x34]
mov ecx, ebp
push edx
mov byte [esp + 0xc4], 0x11
call fcn.004e5670
mov esi, eax
mov byte [esp + 0xc0], 0
lea ecx, [esp + 0x34]
jmp 0x5077b7
mov eax, dword [edi + 0x14]
mov ecx, dword [edi + 0x10]
push eax
lea edx, [esp + 0x18]
push ecx
push edx
call fcn.00421d10
mov eax, dword [esp + 0x1c]
add esp, 0xc
test eax, eax
je 0x50711d
lea ecx, [esp + 0x14]
push ecx
mov ecx, dword [esp + 0xd4]
push eax
call fcn.005e4600
jmp case.0x506aa4.16
lea edx, [esp + 0x14]
mov ecx, ebp
push edx
push 7
call fcn.004e2240
mov esi, eax
jmp case.0x506aa4.16
mov eax, dword [edi + 0x14]
mov ecx, dword [edi + 0x10]
push eax
lea edx, [esp + 0x18]
push ecx
push edx
call fcn.00421d10
mov eax, dword [esp + 0x1c]
add esp, 0xc
test eax, eax
je 0x50716f
lea ecx, [esp + 0x14]
push ecx
push 1
push eax
lea ecx, [ebp + 0x2c90]
call fcn.00542e80
mov esi, eax
dec esi
neg esi
sbb esi, esi
inc esi
jmp case.0x506aa4.16
lea edx, [esp + 0x14]
mov ecx, ebp
push edx
push 1
call fcn.004e2240
mov esi, eax
jmp case.0x506aa4.16
mov eax, dword [edi + 0x14]
mov ecx, dword [edi + 0x10]
push eax
lea edx, [esp + 0x18]
push ecx
push edx
call fcn.00421d10
mov eax, dword [esp + 0x1c]
add esp, 0xc
test eax, eax
je 0x5071c1
lea ecx, [esp + 0x14]
push ecx
push 4
push eax
lea ecx, [ebp + 0x2c90]
call fcn.00542e80
mov esi, eax
dec esi
neg esi
sbb esi, esi
inc esi
jmp case.0x506aa4.16
lea edx, [esp + 0x14]
mov ecx, ebp
push edx
push 4
call fcn.004e2240
mov esi, eax
jmp case.0x506aa4.16
mov eax, dword [edi + 0x10]
lea ecx, [esp + 0x80]
push eax
call sub.MFC42u.DLL_CString::CString_6
push 0
push 0
lea ecx, [esp + 0x9c]
push 0xa
lea edx, [esp + 0x8c]
push ecx
push edx
mov byte [esp + 0xd4], 0x12
call fcn.00419560
add esp, 0x14
lea ecx, [esp + 0x80]
mov byte [esp + 0xc0], 0
call sub.MFC42u.DLL_CString::CString
mov eax, dword [esp + 0x10]
test eax, eax
je 0x50724f
xor ecx, ecx
lea edx, [esp + 0x94]
mov cl, byte [edi + 0x18]
push ecx
push edx
push eax
lea ecx, [ebp + 0x2c90]
call fcn.00544670
mov esi, eax
dec esi
neg esi
sbb esi, esi
inc esi
jmp case.0x506aa4.16
xor eax, eax
lea ecx, [esp + 0x94]
mov al, byte [edi + 0x18]
push eax
push ecx
mov ecx, ebp
call fcn.004e5510
mov esi, eax
jmp case.0x506aa4.16
mov edx, dword [edi + 0x10]
lea ecx, [esp + 0x68]
push edx
call sub.MFC42u.DLL_CString::CString_6
push 0
push 0
lea eax, [esp + 0x9c]
push 0xa
lea ecx, [esp + 0x74]
push eax
push ecx
mov byte [esp + 0xd4], 0x13
call fcn.00419560
add esp, 0x14
lea ecx, [esp + 0x68]
mov byte [esp + 0xc0], 0
call sub.MFC42u.DLL_CString::CString
mov eax, dword [esp + 0x10]
test eax, eax
je 0x5072db
xor edx, edx
lea ecx, [esp + 0x94]
mov dl, byte [edi + 0x18]
push edx
push ecx
push eax
lea ecx, [ebp + 0x2c90]
call fcn.00544920
mov esi, eax
dec esi
neg esi
sbb esi, esi
inc esi
jmp case.0x506aa4.16
xor edx, edx
lea eax, [esp + 0x94]
mov dl, byte [edi + 0x18]
mov ecx, ebp
push edx
push eax
call fcn.004e5e60
mov esi, eax
jmp case.0x506aa4.16
mov ecx, dword [edi + 0x10]
push ecx
lea ecx, [esp + 0x3c]
call sub.MFC42u.DLL_CString::CString_6
push 0
push 0
lea edx, [esp + 0x9c]
push 0xa
lea eax, [esp + 0x44]
push edx
push eax
mov byte [esp + 0xd4], 0x14
call fcn.00419560
add esp, 0x14
lea ecx, [esp + 0x38]
mov byte [esp + 0xc0], 0
call sub.MFC42u.DLL_CString::CString
mov eax, dword [esp + 0x10]
test eax, eax
je 0x507367
xor ecx, ecx
lea edx, [esp + 0x94]
mov cl, byte [edi + 0x18]
push ecx
push edx
push eax
lea ecx, [ebp + 0x2c90]
call fcn.00544980
mov esi, eax
dec esi
neg esi
sbb esi, esi
inc esi
jmp case.0x506aa4.16
xor eax, eax
lea ecx, [esp + 0x94]
mov al, byte [edi + 0x18]
push eax
push ecx
mov ecx, ebp
call fcn.004e5e80
mov esi, eax
jmp case.0x506aa4.16
mov edx, dword [edi + 0x10]
lea ecx, [esp + 0x3c]
push edx
call sub.MFC42u.DLL_CString::CString_6
push 0
push 0
lea eax, [esp + 0x9c]
push 0xa
lea ecx, [esp + 0x48]
push eax
push ecx
mov byte [esp + 0xd4], 0x15
call fcn.00419560
add esp, 0x14
lea ecx, [esp + 0x3c]
mov byte [esp + 0xc0], 0
call sub.MFC42u.DLL_CString::CString
mov eax, dword [esp + 0x10]
test eax, eax
je 0x5073f3
xor edx, edx
lea ecx, [esp + 0x94]
mov dl, byte [edi + 0x18]
push edx
push ecx
push eax
lea ecx, [ebp + 0x2c90]
call fcn.00544ff0
mov esi, eax
dec esi
neg esi
sbb esi, esi
inc esi
jmp case.0x506aa4.16
xor edx, edx
lea eax, [esp + 0x94]
mov dl, byte [edi + 0x18]
mov ecx, ebp
push edx
push eax
call fcn.004e5ea0
mov esi, eax
jmp case.0x506aa4.16
mov eax, dword [esp + 0x10]
test eax, eax
jne case.0x506aa4.16
lea ecx, [esp + 0x14]
call fcn.004a4750
lea ecx, [esp + 0x14]
mov bl, 0x16
push ecx
lea ecx, [ebp + 0x2064]
mov byte [esp + 0xc4], bl
call fcn.00535340
mov eax, dword [edi + 0x10]
test eax, eax
je 0x507489
mov ecx, dword [edi + 0x18]
test ecx, ecx
jne 0x507485
push 0x738574
lea ecx, [esp + 0x48]
call sub.MFC42u.DLL_CString::CString_6
mov eax, dword [edi + 0x10]
lea edx, [esp + 0x44]
push edx
push eax
lea ecx, [esp + 0x1c]
mov byte [esp + 0xc8], 0x17
call fcn.004a4e70
lea ecx, [esp + 0x44]
mov byte [esp + 0xc0], bl
call sub.MFC42u.DLL_CString::CString
jmp 0x5074b2
test eax, eax
jne 0x5074a0
mov ecx, dword [edi + 0x18]
test ecx, ecx
je 0x50749c
push ecx
lea ecx, [esp + 0x18]
call fcn.004a4790
jmp 0x5074b2
test eax, eax
je 0x5074b2
mov ecx, dword [edi + 0x18]
test ecx, ecx
je 0x5074b2
push eax
push ecx
lea ecx, [esp + 0x1c]
call fcn.004a4820
lea ecx, [esp + 0x14]
push 0
push ecx
mov ecx, ebp
call fcn.004e5ff0
mov esi, eax
mov dword [esp + 0x14], vtable.CArray_struct_TDCDEPENDENCY__struct_TDCDEPENDENCY__.0
mov eax, dword [esp + 0x18]
mov byte [esp + 0xc0], 0x18
test eax, eax
je 0x50750b
mov ecx, dword [esp + 0x1c]
test ecx, ecx
je 0x507502
lea ebx, [eax + 4]
mov dword [esp + 0x28], ecx
mov ecx, ebx
call sub.MFC42u.DLL_CString::CString
mov eax, dword [esp + 0x28]
add ebx, 0xc
dec eax
mov dword [esp + 0x28], eax
jne 0x5074e9
mov eax, dword [esp + 0x18]
push eax
call sub.MFC42u.DLL_operatordelete
add esp, 4
mov byte [esp + 0xc0], 0
jmp case.0x506aa4.16
mov eax, dword [esp + 0x10]
test eax, eax
jne case.0x506aa4.16
mov edx, dword [edi + 0x14]
mov eax, dword [edi + 0x10]
push edx
lea ecx, [esp + 0xb0]
push eax
push ecx
call fcn.00421d10
add esp, 0xc
mov ecx, ebp
push eax
call fcn.00507940
mov esi, eax
jmp case.0x506aa4.16
lea ecx, [ebp + 0x3578]
call fcn.00536e90
push eax
mov ecx, ebp
call fcn.005050a0
mov ebx, eax
test ebx, ebx
je case.0x506aa4.16
mov eax, dword [esp + 0x10]
test eax, eax
je 0x5075e2
mov edx, dword [edi + 0x10]
lea ecx, [esp + 0x5c]
push edx
call sub.MFC42u.DLL_CString::CString_6
mov eax, dword [ebx]
mov ecx, ebx
mov byte [esp + 0xc0], 0x19
call dword [eax + 8]
push eax
lea ecx, [esp + 0x58]
call sub.MFC42u.DLL_CString::CString_6
mov eax, dword [esp + 0x10]
lea ecx, [esp + 0x5c]
lea edx, [esp + 0x54]
push ecx
push edx
push eax
lea ecx, [ebp + 0x2c90]
mov byte [esp + 0xcc], 0x1a
call fcn.00542b20
mov esi, eax
lea ecx, [esp + 0x54]
dec esi
mov byte [esp + 0xc0], 0x19
neg esi
sbb esi, esi
inc esi
call sub.MFC42u.DLL_CString::CString
mov byte [esp + 0xc0], 0
lea ecx, [esp + 0x5c]
jmp 0x5077b7
mov ecx, dword [edi + 0x10]
push ecx
lea ecx, [esp + 0x70]
call sub.MFC42u.DLL_CString::CString_6
mov edx, dword [ebx]
mov ecx, ebx
mov byte [esp + 0xc0], 0x1b
call dword [edx + 8]
push eax
lea ecx, [esp + 0x68]
call sub.MFC42u.DLL_CString::CString_6
lea eax, [esp + 0x6c]
lea ecx, [esp + 0x64]
push eax
push ecx
mov ecx, ebp
mov byte [esp + 0xc8], 0x1c
call fcn.004e0490
lea ecx, [esp + 0x64]
mov esi, eax
mov byte [esp + 0xc0], 0x1b
call sub.MFC42u.DLL_CString::CString
mov byte [esp + 0xc0], 0
lea ecx, [esp + 0x6c]
jmp 0x5077b7
push eax
call fcn.004a1b30
add esp, 4
test eax, eax
je case.0x506aa4.16
mov edx, dword [edi + 8]
push edx
call fcn.00419060
add esp, 4
test eax, eax
jne case.0x506aa4.16
mov eax, dword [edi + 8]
lea ecx, [esp + 0x74]
push eax
call sub.MFC42u.DLL_CString::CString_6
lea ecx, [esp + 0x74]
push 0xffffffffffffffff
push ecx
lea ecx, [ebp + 0x2f04]
mov byte [esp + 0xc8], 0x1d
call fcn.004a26f0
mov ebx, eax
lea ecx, [esp + 0x74]
mov dword [esp + 0x28], ebx
mov byte [esp + 0xc0], 0
call sub.MFC42u.DLL_CString::CString
cmp ebx, 0xffffffff
jne 0x5076c7
lea ecx, [esp + 0x94]
mov dword [esp + 0xc0], ebx
call sub.MFC42u.DLL_CStringArray::CStringArray
xor eax, eax
jmp 0x507835
mov ecx, dword [esp + 0x28]
mov edx, dword [edi + 0x10]
mov eax, dword [ebp + 0x2f08]
push edx
lea ebx, [ecx*8]
sub ebx, ecx
lea ecx, [esp + 0x18]
shl ebx, 4
add ebx, eax
call fcn.004a9c70
lea eax, [esp + 0x14]
mov ecx, ebx
push eax
mov byte [esp + 0xc4], 0x1e
call fcn.004a1440
test eax, eax
je 0x50779a
mov eax, dword [esp + 0x10]
test eax, eax
je 0x507758
mov ecx, dword [edi + 8]
push ecx
lea ecx, [esp + 0x80]
call sub.MFC42u.DLL_CString::CString_6
mov ecx, dword [esp + 0x10]
lea edx, [esp + 0x14]
lea eax, [esp + 0x7c]
push edx
push eax
push ecx
lea ecx, [ebp + 0x2c90]
mov byte [esp + 0xcc], 0x1f
call fcn.00542750
mov esi, eax
mov byte [esp + 0xc0], 0x1e
dec esi
lea ecx, [esp + 0x7c]
neg esi
sbb esi, esi
inc esi
jmp 0x507795
mov edx, dword [edi + 8]
lea ecx, [esp + 0x84]
push edx
call sub.MFC42u.DLL_CString::CString_6
lea eax, [esp + 0x14]
lea ecx, [esp + 0x84]
push eax
push ecx
mov ecx, ebp
mov byte [esp + 0xc8], 0x20
call fcn.004e01c0
mov esi, eax
mov byte [esp + 0xc0], 0x1e
lea ecx, [esp + 0x84]
call sub.MFC42u.DLL_CString::CString
lea ecx, [esp + 0x18]
mov byte [esp + 0xc0], 0x21
call sub.MFC42u.DLL_CString::CString
mov byte [esp + 0xc0], 0
lea ecx, [esp + 0x14]
call sub.MFC42u.DLL_CString::CString
test esi, esi
mov dword [ebp + 0x38e0], 0xffffffff
je 0x50781c
mov ebx, dword [esp + 0x10]
test ebx, ebx
je 0x50781c
mov eax, dword [esp + 0xcc]
mov edx, dword [eax + 8]
mov ecx, dword [eax + 4]
xor eax, eax
test edx, edx
jle 0x5077f8
cmp dword [ecx], ebx
je 0x5077f3
inc eax
add ecx, 4
cmp eax, edx
jl 0x5077e5
jmp 0x5077f8
cmp eax, 0xffffffff
jne 0x507806
mov ecx, dword [esp + 0xcc]
push ebx
push edx
call sub.MFC42u.DLL_CDWordArray::SetAtGrow
mov edx, dword [esp + 0xd4]
mov eax, dword [edi]
push edx
push eax
lea ecx, [ebp + 0x2064]
call fcn.00531dd0
lea ecx, [esp + 0x94]
mov dword [esp + 0xc0], 0xffffffff
call sub.MFC42u.DLL_CStringArray::CStringArray
mov eax, esi
mov ecx, dword [esp + 0xb8]
pop edi
pop esi
pop ebp
pop ebx
mov dword fs:[0], ecx
add esp, 0xb4
ret 0x10