Function at 0x547e80
Capabilities:
Get common file path

Disassembly:
sub esp, 0x200
push ebx
push ebp
push esi
push edi
xor ebx, ebx
push 0xff
lea eax, [esp + 0x115]
push ebx
push eax
mov ebp, ecx
mov byte [esp + 0x11c], bl
call fcn.00561170
push 0xff
lea ecx, [esp + 0x21]
push ebx
push ecx
mov byte [esp + 0x28], bl
call fcn.00561170
add esp, 0x18
lea edx, [esp + 0x110]
push edx
push 0x100
call dword [sym.imp.KERNEL32.dll_GetCurrentDirectoryA]
lea eax, [esp + 0x110]
lea edx, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x547ee0
sub eax, edx
inc eax
push eax
call fcn.005617f1
add esp, 4
mov dword [ebp + 4], eax
lea ecx, [esp + 0x110]
mov edx, eax
nop
mov al, byte [ecx]
mov byte [edx], al
inc ecx
inc edx
cmp al, bl
jne 0x547f00
xor eax, eax
cmp dword [0x5b2108], ebx
je 0x5485d0
jmp 0x547f20
mov cl, byte [esp + eax + 0x110]
mov byte [esp + eax + 0x10], cl
inc eax
cmp cl, bl
jne 0x547f20
lea edi, [esp + 0x10]
dec edi
mov al, byte [edi + 1]
inc edi
cmp al, bl
jne 0x547f35
mov al, byte [0x598f10]
mov byte [edi], al
lea eax, [esp + 0x10]
lea edx, [eax + 1]
jmp 0x547f50
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x547f50
sub eax, edx
inc eax
push eax
call fcn.005617f1
add esp, 4
mov dword [ebp + 8], eax
lea ecx, [esp + 0x10]
mov edx, eax
lea esp, [esp]
mov al, byte [ecx]
mov byte [edx], al
inc ecx
inc edx
cmp al, bl
jne 0x547f70
xor eax, eax
lea esp, [esp]
mov cl, byte [esp + eax + 0x110]
mov byte [esp + eax + 0x10], cl
inc eax
cmp cl, bl
jne 0x547f80
lea edi, [esp + 0x10]
dec edi
mov al, byte [edi + 1]
inc edi
cmp al, bl
jne 0x547f95
mov ecx, 5
mov esi, 0x598f14
rep movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
lea eax, [esp + 0x10]
movsb byte es:[edi], byte [esi]
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x547fb3
sub eax, edx
inc eax
push eax
call fcn.005617f1
add esp, 4
mov dword [ebp + 0xc], eax
lea ecx, [esp + 0x10]
mov edx, eax
nop
mov al, byte [ecx]
mov byte [edx], al
inc ecx
inc edx
cmp al, bl
jne 0x547fd0
xor eax, eax
lea esp, [esp]
mov cl, byte [esp + eax + 0x110]
mov byte [esp + eax + 0x10], cl
inc eax
cmp cl, bl
jne 0x547fe0
lea eax, [esp + 0x10]
dec eax
mov cl, byte [eax + 1]
inc eax
cmp cl, bl
jne 0x547ff5
mov ecx, dword [0x598f2c]
mov dl, byte [0x598f30]
mov dword [eax], ecx
mov byte [eax + 4], dl
lea eax, [esp + 0x10]
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x548015
sub eax, edx
inc eax
push eax
call fcn.005617f1
add esp, 4
mov dword [ebp + 0x10], eax
lea ecx, [esp + 0x10]
mov edx, eax
mov al, byte [ecx]
mov byte [edx], al
inc ecx
inc edx
cmp al, bl
jne 0x548031
xor eax, eax
lea ecx, [ecx]
mov cl, byte [esp + eax + 0x110]
mov byte [esp + eax + 0x10], cl
inc eax
cmp cl, bl
jne 0x548040
lea eax, [esp + 0x10]
dec eax
mov cl, byte [eax + 1]
inc eax
cmp cl, bl
jne 0x548055
mov ecx, dword [0x598f34]
mov dx, word [0x598f38]
mov dword [eax], ecx
mov cl, byte [0x598f3a]
mov word [eax + 4], dx
mov byte [eax + 6], cl
lea eax, [esp + 0x10]
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x548080
sub eax, edx
inc eax
push eax
call fcn.005617f1
add esp, 4
mov dword [ebp + 0x14], eax
lea ecx, [esp + 0x10]
mov edx, eax
lea esp, [esp]
mov al, byte [ecx]
mov byte [edx], al
inc ecx
inc edx
cmp al, bl
jne 0x5480a0
xor eax, eax
lea esp, [esp]
mov cl, byte [esp + eax + 0x110]
mov byte [esp + eax + 0x10], cl
inc eax
cmp cl, bl
jne 0x5480b0
lea eax, [esp + 0x10]
dec eax
mov cl, byte [eax + 1]
inc eax
cmp cl, bl
jne 0x5480c5
mov edx, dword [0x598f3c]
mov ecx, dword [0x598f40]
mov dword [eax], edx
mov dx, word [0x598f44]
mov dword [eax + 4], ecx
mov word [eax + 8], dx
lea eax, [esp + 0x10]
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x5480f0
sub eax, edx
inc eax
push eax
call fcn.005617f1
add esp, 4
mov dword [ebp + 0x18], eax
lea ecx, [esp + 0x10]
mov edx, eax
lea esp, [esp]
mov al, byte [ecx]
mov byte [edx], al
inc ecx
inc edx
cmp al, bl
jne 0x548110
xor eax, eax
lea esp, [esp]
mov cl, byte [esp + eax + 0x110]
mov byte [esp + eax + 0x10], cl
inc eax
cmp cl, bl
jne 0x548120
lea eax, [esp + 0x10]
dec eax
mov cl, byte [eax + 1]
inc eax
cmp cl, bl
jne 0x548135
mov ecx, dword [0x598f48]
mov dl, byte [0x598f4c]
mov dword [eax], ecx
mov byte [eax + 4], dl
lea eax, [esp + 0x10]
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x548155
sub eax, edx
inc eax
push eax
call fcn.005617f1
add esp, 4
mov dword [ebp + 0x1c], eax
lea ecx, [esp + 0x10]
mov edx, eax
mov al, byte [ecx]
mov byte [edx], al
inc ecx
inc edx
cmp al, bl
jne 0x548171
xor eax, eax
lea ecx, [ecx]
mov cl, byte [esp + eax + 0x110]
mov byte [esp + eax + 0x10], cl
inc eax
cmp cl, bl
jne 0x548180
lea edi, [esp + 0x10]
dec edi
mov al, byte [edi + 1]
inc edi
cmp al, bl
jne 0x548195
mov al, byte [0x598f11]
mov byte [edi], al
lea eax, [esp + 0x10]
lea edx, [eax + 1]
jmp 0x5481b0
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x5481b0
sub eax, edx
inc eax
push eax
call fcn.005617f1
add esp, 4
mov dword [ebp + 0x20], eax
lea ecx, [esp + 0x10]
mov edx, eax
lea esp, [esp]
mov al, byte [ecx]
mov byte [edx], al
inc ecx
inc edx
cmp al, bl
jne 0x5481d0
xor eax, eax
lea esp, [esp]
mov cl, byte [esp + eax + 0x110]
mov byte [esp + eax + 0x10], cl
inc eax
cmp cl, bl
jne 0x5481e0
lea edi, [esp + 0x10]
dec edi
mov al, byte [edi + 1]
inc edi
cmp al, bl
jne 0x5481f5
mov cl, byte [0x598f12]
lea eax, [esp + 0x10]
mov byte [edi], cl
lea edx, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x548210
sub eax, edx
inc eax
push eax
call fcn.005617f1
add esp, 4
mov dword [ebp + 0x24], eax
lea ecx, [esp + 0x10]
mov edx, eax
lea esp, [esp]
mov al, byte [ecx]
mov byte [edx], al
inc ecx
inc edx
cmp al, bl
jne 0x548230
xor eax, eax
lea esp, [esp]
mov cl, byte [esp + eax + 0x110]
mov byte [esp + eax + 0x10], cl
inc eax
cmp cl, bl
jne 0x548240
lea edi, [esp + 0x10]
dec edi
mov al, byte [edi + 1]
inc edi
cmp al, bl
jne 0x548255
mov dl, byte [0x598f13]
lea eax, [esp + 0x10]
mov byte [edi], dl
lea edx, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x548270
sub eax, edx
inc eax
push eax
call fcn.005617f1
add esp, 4
mov dword [ebp + 0x28], eax
lea ecx, [esp + 0x10]
mov edx, eax
lea esp, [esp]
mov al, byte [ecx]
mov byte [edx], al
inc ecx
inc edx
cmp al, bl
jne 0x548290
xor eax, eax
lea esp, [esp]
mov cl, byte [esp + eax + 0x110]
mov byte [esp + eax + 0x10], cl
inc eax
cmp cl, bl
jne 0x5482a0
lea edi, [esp + 0x10]
dec edi
mov al, byte [edi + 1]
inc edi
cmp al, bl
jne 0x5482b5
mov al, byte [0x598f2b]
mov byte [edi], al
lea eax, [esp + 0x10]
lea edx, [eax + 1]
jmp 0x5482d0
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x5482d0
sub eax, edx
inc eax
push eax
call fcn.005617f1
add esp, 4
mov dword [ebp + 0x2c], eax
lea ecx, [esp + 0x10]
mov edx, eax
lea esp, [esp]
mov al, byte [ecx]
mov byte [edx], al
inc ecx
inc edx
cmp al, bl
jne 0x5482f0
xor eax, eax
lea esp, [esp]
mov cl, byte [esp + eax + 0x110]
mov byte [esp + eax + 0x10], cl
inc eax
cmp cl, bl
jne 0x548300
lea edi, [esp + 0x10]
dec edi
mov al, byte [edi + 1]
inc edi
cmp al, bl
jne 0x548315
mov cl, byte [0x598f31]
lea eax, [esp + 0x10]
mov byte [edi], cl
lea edx, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x548330
sub eax, edx
inc eax
push eax
call fcn.005617f1
add esp, 4
mov dword [ebp + 0x30], eax
lea ecx, [esp + 0x10]
mov edx, eax
lea esp, [esp]
mov al, byte [ecx]
mov byte [edx], al
inc ecx
inc edx
cmp al, bl
jne 0x548350
xor eax, eax
lea esp, [esp]
mov cl, byte [esp + eax + 0x110]
mov byte [esp + eax + 0x10], cl
inc eax
cmp cl, bl
jne 0x548360
lea edi, [esp + 0x10]
dec edi
mov al, byte [edi + 1]
inc edi
cmp al, bl
jne 0x548375
mov dl, byte [0x598f32]
lea eax, [esp + 0x10]
mov byte [edi], dl
lea edx, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x548390
sub eax, edx
inc eax
push eax
call fcn.005617f1
add esp, 4
mov dword [ebp + 0x38], eax
lea ecx, [esp + 0x10]
mov edx, eax
lea esp, [esp]
mov al, byte [ecx]
mov byte [edx], al
inc ecx
inc edx
cmp al, bl
jne 0x5483b0
xor eax, eax
lea esp, [esp]
mov cl, byte [esp + eax + 0x110]
mov byte [esp + eax + 0x10], cl
inc eax
cmp cl, bl
jne 0x5483c0
lea edi, [esp + 0x10]
dec edi
mov al, byte [edi + 1]
inc edi
cmp al, bl
jne 0x5483d5
mov al, byte [0x598f33]
mov byte [edi], al
lea eax, [esp + 0x10]
lea edx, [eax + 1]
jmp 0x5483f0
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x5483f0
sub eax, edx
inc eax
push eax
call fcn.005617f1
add esp, 4
mov dword [ebp + 0x3c], eax
lea ecx, [esp + 0x10]
mov edx, eax
lea esp, [esp]
mov al, byte [ecx]
mov byte [edx], al
inc ecx
inc edx
cmp al, bl
jne 0x548410
xor eax, eax
lea esp, [esp]
mov cl, byte [esp + eax + 0x110]
mov byte [esp + eax + 0x10], cl
inc eax
cmp cl, bl
jne 0x548420
lea eax, [esp + 0x10]
dec eax
mov cl, byte [eax + 1]
inc eax
cmp cl, bl
jne 0x548435
mov ecx, dword [0x598f50]
mov edx, dword [0x598f54]
mov dword [eax], ecx
mov ecx, dword [0x598f58]
mov dword [eax + 4], edx
mov dx, word [0x598f5c]
mov dword [eax + 8], ecx
mov cl, byte [0x598f5e]
mov word [eax + 0xc], dx
mov byte [eax + 0xe], cl
lea eax, [esp + 0x10]
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x548472
sub eax, edx
inc eax
push eax
call fcn.005617f1
add esp, 4
mov dword [ebp + 0x34], eax
lea ecx, [esp + 0x10]
mov edx, eax
mov edi, edi
mov al, byte [ecx]
mov byte [edx], al
inc ecx
inc edx
cmp al, bl
jne 0x548490
xor eax, eax
lea esp, [esp]
mov cl, byte [esp + eax + 0x110]
mov byte [esp + eax + 0x10], cl
inc eax
cmp cl, bl
jne 0x5484a0
lea edi, [esp + 0x10]
dec edi
mov al, byte [edi + 1]
inc edi
cmp al, bl
jne 0x5484b5
mov dl, byte [0x598f3b]
lea eax, [esp + 0x10]
mov byte [edi], dl
lea edx, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x5484d0
sub eax, edx
inc eax
push eax
call fcn.005617f1
add esp, 4
mov dword [ebp + 0x40], eax
lea ecx, [esp + 0x10]
mov edx, eax
lea esp, [esp]
mov al, byte [ecx]
mov byte [edx], al
inc ecx
inc edx
cmp al, bl
jne 0x5484f0
xor eax, eax
lea esp, [esp]
mov cl, byte [esp + eax + 0x110]
mov byte [esp + eax + 0x10], cl
inc eax
cmp cl, bl
jne 0x548500
lea edi, [esp + 0x10]
dec edi
mov al, byte [edi + 1]
inc edi
cmp al, bl
jne 0x548515
mov al, byte [0x598f46]
mov byte [edi], al
lea eax, [esp + 0x10]
lea edx, [eax + 1]
jmp 0x548530
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x548530
sub eax, edx
inc eax
push eax
call fcn.005617f1
add esp, 4
mov dword [ebp + 0x44], eax
lea ecx, [esp + 0x10]
mov edx, eax
lea esp, [esp]
mov al, byte [ecx]
mov byte [edx], al
inc ecx
inc edx
cmp al, bl
jne 0x548550
xor eax, eax
lea esp, [esp]
mov cl, byte [esp + eax + 0x110]
mov byte [esp + eax + 0x10], cl
inc eax
cmp cl, bl
jne 0x548560
lea edi, [esp + 0x10]
dec edi
mov al, byte [edi + 1]
inc edi
cmp al, bl
jne 0x548575
mov cl, byte [0x598f47]
lea eax, [esp + 0x10]
mov byte [edi], cl
lea edx, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x548590
sub eax, edx
inc eax
push eax
call fcn.005617f1
add esp, 4
mov dword [ebp + 0x48], eax
lea ecx, [esp + 0x10]
mov edx, eax
lea esp, [esp]
mov al, byte [ecx]
mov byte [edx], al
inc ecx
inc edx
cmp al, bl
jne 0x5485b0
pop edi
pop esi
mov dword [ebp + 0x50], ebx
pop ebp
pop ebx
add esp, 0x200
ret
mov cl, byte [esp + eax + 0x110]
mov byte [esp + eax + 0x10], cl
inc eax
cmp cl, bl
jne 0x5485d0
lea edi, [esp + 0x10]
dec edi
mov al, byte [edi + 1]
inc edi
cmp al, bl
jne 0x5485e5
mov dl, byte [0x598f4d]
lea eax, [esp + 0x10]
mov byte [edi], dl
lea edx, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x548600
sub eax, edx
inc eax
push eax
call fcn.005617f1
add esp, 4
mov dword [ebp + 8], eax
lea ecx, [esp + 0x10]
mov edx, eax
lea esp, [esp]
mov al, byte [ecx]
mov byte [edx], al
inc ecx
inc edx
cmp al, bl
jne 0x548620
xor eax, eax
lea esp, [esp]
mov cl, byte [esp + eax + 0x110]
mov byte [esp + eax + 0x10], cl
inc eax
cmp cl, bl
jne 0x548630
lea edi, [esp + 0x10]
dec edi
mov al, byte [edi + 1]
inc edi
cmp al, bl
jne 0x548645
mov ecx, 5
mov esi, 0x598f60
rep movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
lea eax, [esp + 0x10]
movsb byte es:[edi], byte [esi]
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x548663
sub eax, edx
inc eax
push eax
call fcn.005617f1
add esp, 4
mov dword [ebp + 0xc], eax
lea ecx, [esp + 0x10]
mov edx, eax
nop
mov al, byte [ecx]
mov byte [edx], al
inc ecx
inc edx
cmp al, bl
jne 0x548680
xor eax, eax
lea esp, [esp]
mov cl, byte [esp + eax + 0x110]
mov byte [esp + eax + 0x10], cl
inc eax
cmp cl, bl
jne 0x548690
lea eax, [esp + 0x10]
dec eax
mov cl, byte [eax + 1]
inc eax
cmp cl, bl
jne 0x5486a5
mov ecx, dword [0x598f78]
mov dl, byte [0x598f7c]
mov dword [eax], ecx
mov byte [eax + 4], dl
lea eax, [esp + 0x10]
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x5486c5
sub eax, edx
inc eax
push eax
call fcn.005617f1
add esp, 4
mov dword [ebp + 0x10], eax
lea ecx, [esp + 0x10]
mov edx, eax
mov al, byte [ecx]
mov byte [edx], al
inc ecx
inc edx
cmp al, bl
jne 0x5486e1
xor eax, eax
lea ecx, [ecx]
mov cl, byte [esp + eax + 0x110]
mov byte [esp + eax + 0x10], cl
inc eax
cmp cl, bl
jne 0x5486f0
lea eax, [esp + 0x10]
dec eax
mov cl, byte [eax + 1]
inc eax
cmp cl, bl
jne 0x548705
mov ecx, dword [0x598f80]
mov dx, word [0x598f84]
mov dword [eax], ecx
mov cl, byte [0x598f86]
mov word [eax + 4], dx
mov byte [eax + 6], cl
lea eax, [esp + 0x10]
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x548730
sub eax, edx
inc eax
push eax
call fcn.005617f1
add esp, 4
mov dword [ebp + 0x14], eax
lea ecx, [esp + 0x10]
mov edx, eax
lea esp, [esp]
mov al, byte [ecx]
mov byte [edx], al
inc ecx
inc edx
cmp al, bl
jne 0x548750
xor eax, eax
lea esp, [esp]
mov cl, byte [esp + eax + 0x110]
mov byte [esp + eax + 0x10], cl
inc eax
cmp cl, bl
jne 0x548760
lea eax, [esp + 0x10]
dec eax
mov cl, byte [eax + 1]
inc eax
cmp cl, bl
jne 0x548775
mov edx, dword [0x598f88]
mov ecx, dword [0x598f8c]
mov dword [eax], edx
mov dx, word [0x598f90]
mov dword [eax + 4], ecx
mov word [eax + 8], dx
lea eax, [esp + 0x10]
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x5487a0
sub eax, edx
inc eax
push eax
call fcn.005617f1
add esp, 4
mov dword [ebp + 0x18], eax
lea ecx, [esp + 0x10]
mov edx, eax
lea esp, [esp]
mov al, byte [ecx]
mov byte [edx], al
inc ecx
inc edx
cmp al, bl
jne 0x5487c0
xor eax, eax
lea esp, [esp]
mov cl, byte [esp + eax + 0x110]
mov byte [esp + eax + 0x10], cl
inc eax
cmp cl, bl
jne 0x5487d0
lea eax, [esp + 0x10]
dec eax
mov cl, byte [eax + 1]
inc eax
cmp cl, bl
jne 0x5487e5
mov ecx, dword [0x598f94]
mov dl, byte [0x598f98]
mov dword [eax], ecx
mov byte [eax + 4], dl
lea eax, [esp + 0x10]
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x548805
sub eax, edx
inc eax
push eax
call fcn.005617f1
add esp, 4
mov dword [ebp + 0x1c], eax
lea ecx, [esp + 0x10]
mov edx, eax
mov al, byte [ecx]
mov byte [edx], al
inc ecx
inc edx
cmp al, bl
jne 0x548821
xor eax, eax
lea ecx, [ecx]
mov cl, byte [esp + eax + 0x110]
mov byte [esp + eax + 0x10], cl
inc eax
cmp cl, bl
jne 0x548830
lea eax, [esp + 0x10]
dec eax
mov cl, byte [eax + 1]
inc eax
cmp cl, bl
jne 0x548845
mov ecx, dword [0x598f9c]
mov edx, dword [0x598fa0]
mov dword [eax], ecx
mov ecx, dword [0x598fa4]
mov dword [eax + 4], edx
mov edx, dword [0x598fa8]
mov dword [eax + 8], ecx
mov cx, word [0x598fac]
mov dword [eax + 0xc], edx
mov word [eax + 0x10], cx
lea eax, [esp + 0x10]
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x548882
sub eax, edx
inc eax
push eax
call fcn.005617f1
add esp, 4
mov dword [ebp + 0x20], eax
lea ecx, [esp + 0x10]
mov edx, eax
mov edi, edi
mov al, byte [ecx]
mov byte [edx], al
inc ecx
inc edx
cmp al, bl
jne 0x5488a0
xor eax, eax
lea esp, [esp]
mov cl, byte [esp + eax + 0x110]
mov byte [esp + eax + 0x10], cl
inc eax
cmp cl, bl
jne 0x5488b0
lea eax, [esp + 0x10]
dec eax
mov cl, byte [eax + 1]
inc eax
cmp cl, bl
jne 0x5488c5
mov edx, dword [0x598fb0]
mov ecx, dword [0x598fb4]
mov dword [eax], edx
mov edx, dword [0x598fb8]
mov dword [eax + 4], ecx
mov dword [eax + 8], edx
lea eax, [esp + 0x10]
lea edx, [eax + 1]
mov edi, edi
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x5488f0
sub eax, edx
inc eax
push eax
call fcn.005617f1
add esp, 4
mov dword [ebp + 0x24], eax
lea ecx, [esp + 0x10]
mov edx, eax
lea esp, [esp]
mov al, byte [ecx]
mov byte [edx], al
inc ecx
inc edx
cmp al, bl
jne 0x548910
xor eax, eax
lea esp, [esp]
mov cl, byte [esp + eax + 0x110]
mov byte [esp + eax + 0x10], cl
inc eax
cmp cl, bl
jne 0x548920
lea eax, [esp + 0x10]
dec eax
mov cl, byte [eax + 1]
inc eax
cmp cl, bl
jne 0x548935
mov ecx, dword [0x598fbc]
mov edx, dword [0x598fc0]
mov dword [eax], ecx
mov ecx, dword [0x598fc4]
mov dword [eax + 4], edx
mov edx, dword [0x598fc8]
mov dword [eax + 8], ecx
mov dword [eax + 0xc], edx
lea eax, [esp + 0x10]
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x548967
sub eax, edx
inc eax
push eax
call fcn.005617f1
add esp, 4
mov dword [ebp + 0x28], eax
lea ecx, [esp + 0x10]
mov edx, eax
mov al, byte [ecx]
mov byte [edx], al
inc ecx
inc edx
cmp al, bl
jne 0x548983
xor eax, eax
nop
mov cl, byte [esp + eax + 0x110]
mov byte [esp + eax + 0x10], cl
inc eax
cmp cl, bl
jne 0x548990
lea eax, [esp + 0x10]
dec eax
mov cl, byte [eax + 1]
inc eax
cmp cl, bl
jne 0x5489a5
mov ecx, dword [0x598fcc]
mov edx, dword [0x598fd0]
mov dword [eax], ecx
mov ecx, dword [0x598fd4]
mov dword [eax + 4], edx
mov dword [eax + 8], ecx
lea eax, [esp + 0x10]
lea edx, [eax + 1]
mov edi, edi
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x5489d0
sub eax, edx
inc eax
push eax
call fcn.005617f1
add esp, 4
mov dword [ebp + 0x2c], eax
lea ecx, [esp + 0x10]
mov edx, eax
lea esp, [esp]
mov al, byte [ecx]
mov byte [edx], al
inc ecx
inc edx
cmp al, bl
jne 0x5489f0
xor eax, eax
lea esp, [esp]
mov cl, byte [esp + eax + 0x110]
mov byte [esp + eax + 0x10], cl
inc eax
cmp cl, bl
jne 0x548a00
lea eax, [esp + 0x10]
dec eax
mov cl, byte [eax + 1]
inc eax
cmp cl, bl
jne 0x548a15
mov edx, dword [0x598fd8]
mov ecx, dword [0x598fdc]
mov dword [eax], edx
mov edx, dword [0x598fe0]
mov dword [eax + 4], ecx
mov cx, word [0x598fe4]
mov dword [eax + 8], edx
mov dl, byte [0x598fe6]
mov word [eax + 0xc], cx
mov byte [eax + 0xe], dl
lea eax, [esp + 0x10]
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x548a52
sub eax, edx
inc eax
push eax
call fcn.005617f1
add esp, 4
mov dword [ebp + 0x30], eax
lea ecx, [esp + 0x10]
mov edx, eax
mov edi, edi
mov al, byte [ecx]
mov byte [edx], al
inc ecx
inc edx
cmp al, bl
jne 0x548a70
xor eax, eax
lea esp, [esp]
mov cl, byte [esp + eax + 0x110]
mov byte [esp + eax + 0x10], cl
inc eax
cmp cl, bl
jne 0x548a80
lea eax, [esp + 0x10]
dec eax
mov cl, byte [eax + 1]
inc eax
cmp cl, bl
jne 0x548a95
mov ecx, dword [0x598fe8]
mov edx, dword [0x598fec]
mov dword [eax], ecx
mov ecx, dword [0x598ff0]
mov dword [eax + 4], edx
mov dword [eax + 8], ecx
lea eax, [esp + 0x10]
lea edx, [eax + 1]
mov edi, edi
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x548ac0
sub eax, edx
inc eax
push eax
call fcn.005617f1
add esp, 4
mov dword [ebp + 0x38], eax
lea ecx, [esp + 0x10]
mov edx, eax
lea esp, [esp]
mov al, byte [ecx]
mov byte [edx], al
inc ecx
inc edx
cmp al, bl
jne 0x548ae0
xor eax, eax
lea esp, [esp]
mov cl, byte [esp + eax + 0x110]
mov byte [esp + eax + 0x10], cl
inc eax
cmp cl, bl
jne 0x548af0
lea eax, [esp + 0x10]
dec eax
mov cl, byte [eax + 1]
inc eax
cmp cl, bl
jne 0x548b05
mov edx, dword [0x598ff4]
mov ecx, dword [0x598ff8]
mov dword [eax], edx
mov edx, dword [0x598ffc]
mov dword [eax + 4], ecx
mov cx, word [0x599000]
mov dword [eax + 8], edx
mov word [eax + 0xc], cx
lea eax, [esp + 0x10]
lea edx, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x548b40
sub eax, edx
inc eax
push eax
call fcn.005617f1
add esp, 4
mov dword [ebp + 0x3c], eax
lea ecx, [esp + 0x10]
mov edx, eax
lea esp, [esp]
mov al, byte [ecx]
mov byte [edx], al
inc ecx
inc edx
cmp al, bl
jne 0x548b60
xor eax, eax
lea esp, [esp]
mov cl, byte [esp + eax + 0x110]
mov byte [esp + eax + 0x10], cl
inc eax
cmp cl, bl
jne 0x548b70
lea eax, [esp + 0x10]
dec eax
mov cl, byte [eax + 1]
inc eax
cmp cl, bl
jne 0x548b85
mov edx, dword [0x599004]
mov ecx, dword [0x599008]
mov dword [eax], edx
mov edx, dword [0x59900c]
mov dword [eax + 4], ecx
mov cx, word [0x599010]
mov dword [eax + 8], edx
mov dl, byte [0x599012]
mov word [eax + 0xc], cx
mov byte [eax + 0xe], dl
lea eax, [esp + 0x10]
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x548bc2
sub eax, edx
inc eax
push eax
call fcn.005617f1
add esp, 4
mov dword [ebp + 0x34], eax
lea ecx, [esp + 0x10]
mov edx, eax
mov edi, edi
mov al, byte [ecx]
mov byte [edx], al
inc ecx
inc edx
cmp al, bl
jne 0x548be0
xor eax, eax
lea esp, [esp]
mov cl, byte [esp + eax + 0x110]
mov byte [esp + eax + 0x10], cl
inc eax
cmp cl, bl
jne 0x548bf0
lea eax, [esp + 0x10]
dec eax
mov cl, byte [eax + 1]
inc eax
cmp cl, bl
jne 0x548c05
mov ecx, dword [str.3DDataMapObject]
mov edx, dword [0x599018]
mov dword [eax], ecx
mov ecx, dword [0x59901c]
mov dword [eax + 4], edx
mov edx, dword [0x599020]
mov dword [eax + 8], ecx
mov cx, word [0x599024]
mov dword [eax + 0xc], edx
mov word [eax + 0x10], cx
lea eax, [esp + 0x10]
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x548c42
sub eax, edx
inc eax
push eax
call fcn.005617f1
add esp, 4
mov dword [ebp + 0x40], eax
lea ecx, [esp + 0x10]
mov edx, eax
mov edi, edi
mov al, byte [ecx]
mov byte [edx], al
inc ecx
inc edx
cmp al, bl
jne 0x548c60
xor eax, eax
lea esp, [esp]
mov cl, byte [esp + eax + 0x110]
mov byte [esp + eax + 0x10], cl
inc eax
cmp cl, bl
jne 0x548c70
lea eax, [esp + 0x10]
dec eax
mov cl, byte [eax + 1]
inc eax
cmp cl, bl
jne 0x548c85
mov edx, dword [0x599028]
mov ecx, dword [0x59902c]
mov dword [eax], edx
mov edx, dword [0x599030]
mov dword [eax + 4], ecx
mov cx, word [0x599034]
mov dword [eax + 8], edx
mov word [eax + 0xc], cx
lea eax, [esp + 0x10]
lea edx, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x548cc0
sub eax, edx
inc eax
push eax
call fcn.005617f1
add esp, 4
mov dword [ebp + 0x44], eax
lea ecx, [esp + 0x10]
mov edx, eax
lea esp, [esp]
mov al, byte [ecx]
mov byte [edx], al
inc ecx
inc edx
cmp al, bl
jne 0x548ce0
xor eax, eax
lea esp, [esp]
mov cl, byte [esp + eax + 0x110]
mov byte [esp + eax + 0x10], cl
inc eax
cmp cl, bl
jne 0x548cf0
lea eax, [esp + 0x10]
dec eax
mov cl, byte [eax + 1]
inc eax
cmp cl, bl
jne 0x548d05
mov edx, dword [0x599038]
mov ecx, dword [0x59903c]
mov dword [eax], edx
mov edx, dword [0x599040]
mov dword [eax + 4], ecx
mov cl, byte [0x599044]
mov dword [eax + 8], edx
mov byte [eax + 0xc], cl
lea eax, [esp + 0x10]
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x548d37
sub eax, edx
inc eax
push eax
call fcn.005617f1
add esp, 4
mov dword [ebp + 0x48], eax
lea ecx, [esp + 0x10]
mov edx, eax
mov al, byte [ecx]
mov byte [edx], al
inc ecx
inc edx
cmp al, bl
jne 0x548d53
pop edi
pop esi
mov dword [ebp + 0x50], ebx
pop ebp
pop ebx
add esp, 0x200
ret