Function at 0x44a4ec
Capabilities:
Encode data using base64
Get geographical location
Resolve function by parsing pe exports

Disassembly:
mov rax, rsp
mov qword [rax + 8], rcx
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x510
mov qword [rsp + 0x2e0], 0xfffffffffffffffe
movaps xmmword [rax - 0x48], xmm6
movaps xmmword [rax - 0x58], xmm7
mov r13, rcx
mov rdx, qword [rcx + 0x110]
mov rax, qword [rcx + 0x108]
cmp rax, rdx
je 0x44a54c
mov rdi, rdx
sub rdi, rdx
je 0x44a545
mov r8, rdi
mov rcx, rax
call fcn.006a4bf0
add rax, rdi
mov qword [r13 + 0x110], rax
lea rsi, [r13 + 0x98]
lea rcx, [rsi + 8]
xor r8d, r8d
mov rdx, rcx
call fcn.00463c98
xor r12d, r12d
mov qword [rsp + 0x558], r12
lea rcx, [rsi + 0x10]
mov rdx, qword [rcx + 8]
sub rdx, qword [rcx]
sar rdx, 3
lea r8, [rsp + 0x558]
call fcn.00403d94
mov qword [rsi + 0x28], r12
lea rdx, [0x00797870]
mov qword [rsp + 0x50], rdx
mov dword [rsp + 0x78], r12d
mov dword [rsp + 0x74], r12d
mov dword [rsp + 0x558], r12d
mov qword [rsp + 0x40], r12
cmp byte [str.__ADAEAFAGAIALAMANAOAQARASATAUAWAXAZBABBBDBEBFBGBHBIBJBMBNBOBRBSBTBVBWBYBZCACCCDCFCGCICKCLCMCNCOCRCSCUCVCXCYCZDEDJDKDMDODZECEEEGEHERESETFIFJFKFMFOFRGAGBGDGEGFGHGIGLGMGNGPGQGRGSGTGUGWGYHKHMHNHRHTHUCHIDIEILINIOIQIRISITJMJOJPKEKGKHKIKMKNKPKRKWKYKZLALBLCLILKLRLSLTLULVLYMAMCMDMGMHMKMLMMMNMOMPMQMRMSMTMUMVMWMXMYMZNANCNENFNGNINLNONPNRNUNZOMPAPEPFPGPHPKPLPMPNPRPSPTPWPYQARERORURWSASBSCSDSESGSHSISJSKSLSMSNSOSRSTSVSYSZTCTDTFTGTHTJTKTLTMTNTOTRTTTVTWTZUAUGUMUSUYUZVAVCVEVGVIVNVUWFWSYEYTYUZAZMZWEU], r12b
je 0x44a858
lea rax, str.__ADAEAFAGAIALAMANAOAQARASATAUAWAXAZBABBBDBEBFBGBHBIBJBMBNBOBRBSBTBVBWBYBZCACCCDCFCGCICKCLCMCNCOCRCSCUCVCXCYCZDEDJDKDMDODZECEEEGEHERESETFIFJFKFMFOFRGAGBGDGEGFGHGIGLGMGNGPGQGRGSGTGUGWGYHKHMHNHRHTHUCHIDIEILINIOIQIRISITJMJOJPKEKGKHKIKMKNKPKRKWKYKZLALBLCLILKLRLSLTLULVLYMAMCMDMGMHMKMLMMMNMOMPMQMRMSMTMUMVMWMXMYMZNANCNENFNGNINLNONPNRNUNZOMPAPEPFPGPHPKPLPMPNPRPSPTPWPYQARERORURWSASBSCSDSESGSHSISJSKSLSMSNSOSRSTSVSYSZTCTDTFTGTHTJTKTLTMTNTOTRTTTVTWTZUAUGUMUSUYUZVAVCVEVGVIVNVUWFWSYEYTYUZAZMZWEU
mov rdi, rax
mov ecx, r12d
mov dword [rsp + 0x560], ecx
movabs rbx, 0x7ffffffffffffff
lea r14d, [r12 + 1]
mov r15d, 0x100
mov qword [rsp + 0x60], rdx
mov r8d, ecx
add r8, rax
mov r9d, 2
lea rdx, [rsp + 0x80]
lea rcx, [0x008ade00]
call fcn.0044fd94
mov rcx, qword [rax]
mov qword [rsp + 0x68], rcx
mov ecx, dword [rsp + 0x558]
mov dword [rsp + 0x70], ecx
movzx eax, word [rdi]
mov dword [rsp + 0x568], eax
mov dword [rsp + 0x56c], ecx
lea r8, [rsp + 0x568]
lea rdx, [rsp + 0x160]
mov rcx, rsi
call fcn.0044d648
mov rsi, qword [r13 + 0x110]
cmp rsi, qword [r13 + 0x118]
je 0x44a677
mov rcx, rsi
lea rdx, [rsp + 0x60]
mov r8d, 0x20
call fcn.006a4bf0
add qword [r13 + 0x110], 0x20
jmp 0x44a7a6
mov qword [rsp + 0x58], r14
mov rcx, rsi
sub rcx, qword [r13 + 0x108]
sar rcx, 5
mov qword [rsp + 0x48], rcx
mov rax, rbx
sub rax, rcx
cmp rax, r14
jb 0x44a84b
lea rax, [rsp + 0x48]
lea rdx, [rsp + 0x58]
cmp rcx, r14
cmovbe rax, rdx
mov rax, qword [rax]
lea rdi, [rcx + rax]
cmp rdi, rbx
ja 0x44a6c0
cmp rdi, rcx
jae 0x44a6c3
mov rdi, rbx
cmp rdi, rbx
ja 0x44a810
cmp rdi, r12
je 0x44a70d
shl rdi, 5
mov qword [rsp + 0xb8], rdi
cmp rdi, r15
jbe 0x44a6ef
mov rcx, rdi
call fcn.006a494c
mov rbx, rax
jmp 0x44a6ff
lea rcx, [rsp + 0xb8]
call fcn.006a36c0
mov rbx, rax
mov rdi, qword [rsp + 0xb8]
shr rdi, 5
jmp 0x44a710
mov rbx, r12
mov rdx, qword [r13 + 0x108]
sub rsi, rdx
je 0x44a731
mov r8, rsi
mov rcx, rbx
call fcn.006a4bf0
add rax, rsi
mov qword [rsp + 0x48], rax
jmp 0x44a739
mov rax, rbx
mov qword [rsp + 0x48], rbx
mov rcx, rax
lea rdx, [rsp + 0x60]
mov r8d, 0x20
call fcn.006a4bf0
mov rsi, qword [rsp + 0x48]
add rsi, 0x20
mov rcx, qword [r13 + 0x108]
mov rdx, qword [r13 + 0x118]
sub rdx, rcx
cmp rcx, r12
je 0x44a780
and rdx, 0xffffffffffffffe0
cmp rdx, r15
jbe 0x44a77b
call fcn.006a4944
jmp 0x44a780
call fcn.006a3610
shl rdi, 5
add rdi, rbx
mov qword [r13 + 0x108], rbx
mov qword [r13 + 0x110], rsi
mov qword [r13 + 0x118], rdi
movabs rbx, 0x7ffffffffffffff
xor eax, eax
or rcx, 0xffffffffffffffff
mov rdx, qword [rsp + 0x50]
mov rdi, rdx
repne scasb al, byte [rdi]
not rcx
sub rcx, r14
lea rdx, [rdx + rcx + 1]
mov qword [rsp + 0x50], rdx
add dword [rsp + 0x558], r14d
mov ecx, dword [rsp + 0x560]
add ecx, 2
mov dword [rsp + 0x560], ecx
mov rax, qword [rsp + 0x40]
add rax, r14
mov qword [rsp + 0x40], rax
lea rdi, str.__ADAEAFAGAIALAMANAOAQARASATAUAWAXAZBABBBDBEBFBGBHBIBJBMBNBOBRBSBTBVBWBYBZCACCCDCFCGCICKCLCMCNCOCRCSCUCVCXCYCZDEDJDKDMDODZECEEEGEHERESETFIFJFKFMFOFRGAGBGDGEGFGHGIGLGMGNGPGQGRGSGTGUGWGYHKHMHNHRHTHUCHIDIEILINIOIQIRISITJMJOJPKEKGKHKIKMKNKPKRKWKYKZLALBLCLILKLRLSLTLULVLYMAMCMDMGMHMKMLMMMNMOMPMQMRMSMTMUMVMWMXMYMZNANCNENFNGNINLNONPNRNUNZOMPAPEPFPGPHPKPLPMPNPRPSPTPWPYQARERORURWSASBSCSDSESGSHSISJSKSLSMSNSOSRSTSVSYSZTCTDTFTGTHTJTKTLTMTNTOTRTTTVTWTZUAUGUMUSUYUZVAVCVEVGVIVNVUWFWSYEYTYUZAZMZWEU
lea rdi, [rdi + rax*2]
cmp byte [rdi], r12b
lea rsi, [r13 + 0x98]
lea rax, str.__ADAEAFAGAIALAMANAOAQARASATAUAWAXAZBABBBDBEBFBGBHBIBJBMBNBOBRBSBTBVBWBYBZCACCCDCFCGCICKCLCMCNCOCRCSCUCVCXCYCZDEDJDKDMDODZECEEEGEHERESETFIFJFKFMFOFRGAGBGDGEGFGHGIGLGMGNGPGQGRGSGTGUGWGYHKHMHNHRHTHUCHIDIEILINIOIQIRISITJMJOJPKEKGKHKIKMKNKPKRKWKYKZLALBLCLILKLRLSLTLULVLYMAMCMDMGMHMKMLMMMNMOMPMQMRMSMTMUMVMWMXMYMZNANCNENFNGNINLNONPNRNUNZOMPAPEPFPGPHPKPLPMPNPRPSPTPWPYQARERORURWSASBSCSDSESGSHSISJSKSLSMSNSOSRSTSVSYSZTCTDTFTGTHTJTKTLTMTNTOTRTTTVTWTZUAUGUMUSUYUZVAVCVEVGVIVNVUWFWSYEYTYUZAZMZWEU
jne 0x44a5e6
jmp 0x44a864
mov r8d, r14d
lea rdx, str.bad_allocation
lea rcx, [rsp + 0x2e8]
call fcn.006a4a74
lea rdx, vtable.std::bad_alloc.0
mov qword [rsp + 0x2e8], rdx
lea rdx, [0x00850ba0]
lea rcx, [rsp + 0x2e8]
call fcn.006ab82c
int3
lea rcx, str.vector
call fcn.006a4230
int3
mov r14d, 1
mov r15d, 0x100
mov rax, qword [r13 + 0x110]
sub rax, qword [r13 + 0x108]
sar rax, 5
mov qword [r13 + 0x120], rax
mov rdx, qword [r13 + 0x10]
mov rax, qword [r13 + 8]
cmp rax, rdx
je 0x44a8a4
mov rdi, rdx
sub rdi, rdx
je 0x44a8a0
mov r8, rdi
mov rcx, rax
call fcn.006a4bf0
add rax, rdi
mov qword [r13 + 0x10], rax
lea rdi, [r13 + 0x20]
cmp qword [rdi + 0x20], r12
je 0x44a8ca
mov rdx, qword [rdi + 8]
mov rcx, rdi
call fcn.004a1e58
mov qword [rdi + 0x10], rdi
mov qword [rdi + 8], r12
mov qword [rdi + 0x18], rdi
mov qword [rdi + 0x20], r12
lea rax, [rsp + 0x88]
mov qword [rsp + 0xa8], rax
lea rax, [rsp + 0x88]
mov qword [rsp + 0xb0], rax
mov byte [rsp + 0x88], r12b
lea r8, str.GeoIpCountryWhois.zip
lea rdx, [0x0085e988]
lea rcx, [rsp + 0xc0]
call fcn.00402658
nop
lea rdx, [rsp + 0xc0]
lea rcx, [rsp + 0x220]
call fcn.00401f00
nop
mov rdx, rax
lea rcx, [rsp + 0x330]
call fcn.005eebfc
nop
lea rax, [rsp + 0x220]
mov rcx, qword [rsp + 0x268]
cmp rcx, rax
je 0x44a972
cmp rcx, r12
je 0x44a972
mov rax, qword [rsp + 0x220]
sub rax, rcx
sar rax, 1
lea rdx, [rax + rax]
cmp rdx, r15
jbe 0x44a96d
call fcn.006a4944
jmp 0x44a972
call fcn.006a3610
lea rcx, [rsp + 0x330]
call fcn.005eeca8
mov edx, dword [rsp + 0x360]
lea rcx, [rsp + 0x88]
call fcn.0044d570
lea rcx, [rsp + 0x330]
call fcn.005eedb4
mov r8d, dword [rsp + 0x360]
mov rdx, qword [rsp + 0xb0]
lea rcx, [rsp + 0x330]
call fcn.005eee34
nop
lea rcx, [rsp + 0x330]
call fcn.005eec5c
nop
lea rax, [rsp + 0xc0]
mov rcx, qword [rsp + 0xe8]
cmp rcx, rax
je 0x44aa03
cmp rcx, r12
je 0x44aa03
mov rdx, qword [rsp + 0xc0]
sub rdx, rcx
cmp rdx, r15
jbe 0x44a9fd
call fcn.006a4944
jmp 0x44aa03
call fcn.006a3610
nop
jmp 0x44aa1b
mov rax, qword [rsp + 0xa8]
cmp qword [rsp + 0xb0], rax
jne 0x44ab68
lea r8, str.GeoIpCountryWhois.csv
lea rdx, [0x0085e988]
lea rcx, [rsp + 0xc0]
call fcn.00402658
nop
mov r9d, r14d
mov r8d, 0x80000000
lea rdx, [rsp + 0xc0]
lea rcx, [rsp + 0x1b0]
call fcn.005944d4
nop
lea rdx, [rsp + 0x170]
mov rcx, rax
call fcn.005954d8
nop
lea rcx, [rsp + 0x88]
cmp rax, rcx
je 0x44aaa0
mov r8, qword [rax + 0x20]
mov rdx, qword [rax + 0x28]
lea rcx, [rsp + 0x88]
call fcn.0040289c
nop
lea rax, [rsp + 0x170]
mov rcx, qword [rsp + 0x198]
cmp rcx, rax
je 0x44aad7
cmp rcx, r12
je 0x44aad7
mov rdx, qword [rsp + 0x170]
sub rdx, rcx
cmp rdx, r15
jbe 0x44aad1
call fcn.006a4944
jmp 0x44aad7
call fcn.006a3610
nop
lea rax, [0x007955b8]
mov qword [rsp + 0x1b0], rax
lea rax, [0x007955c8]
mov qword [rsp + 0x1b8], rax
lea rcx, [rsp + 0x1b0]
call fcn.0059492c
nop
lea rax, [rsp + 0xc0]
mov rcx, qword [rsp + 0xe8]
cmp rcx, rax
je 0x44ab3a
cmp rcx, r12
je 0x44ab3a
mov rdx, qword [rsp + 0xc0]
sub rdx, rcx
cmp rdx, r15
jbe 0x44ab34
call fcn.006a4944
jmp 0x44ab3a
call fcn.006a3610
nop
jmp 0x44ab52
mov rcx, qword [rsp + 0xb0]
cmp rcx, qword [rsp + 0xa8]
je 0x44b121
mov rbx, r12
lea r8, [rsp + 0x558]
lea rdx, [0x007986b0]
lea rcx, [rsp + 0xc0]
call fcn.004021a8
nop
lea r8, [rsp + 0xc0]
lea rdx, str.__d_.___2___d_______d_______.______.__
lea rcx, [rsp + 0x220]
call fcn.005832a0
nop
lea rax, [rsp + 0xc0]
mov rcx, qword [rsp + 0xe8]
cmp rcx, rax
je 0x44abdb
cmp rcx, r12
je 0x44abdb
mov rdx, qword [rsp + 0xc0]
sub rdx, rcx
cmp rdx, r15
jbe 0x44abd6
call fcn.006a4944
jmp 0x44abdb
call fcn.006a3610
mov qword [rsp + 0x558], r12
lea r8, [rsp + 0x558]
xor edx, edx
mov rcx, qword [rsp + 0x220]
call sym.greylink_x64.exe_pcre_study
mov qword [rsp + 0x230], rax
cmp qword [rsp + 0x558], r12
je 0x44ac22
cmp rax, r12
je 0x44ac1a
mov rcx, rax
call qword [sym.greylink_x64.exe_pcre_free]
mov qword [rsp + 0x230], r12
or dword [rsp + 0x70], 0xffffffff
xor r8d, r8d
mov dl, 0xa
lea rcx, [rsp + 0x88]
call fcn.00420e80
mov rsi, rax
mov qword [rsp + 0xb8], rax
cmp rax, 0xffffffffffffffff
je 0x44b10c
mov rcx, qword [rsp + 0xb0]
mov byte [rcx + rsi], r12b
mov rdi, qword [rsp + 0xb0]
add rdi, rbx
mov qword [rsp + 0x2d0], rdi
mov rax, rdi
sub rax, rbx
add rax, rsi
mov qword [rsp + 0x2c8], rax
xor r8d, r8d
lea rdx, [rsp + 0x2a8]
lea rcx, [rsp + 0x220]
call fcn.005833b4
cmp eax, 6
jne 0x44b098
cmp dword [rsp + 0x238], 2
jle 0x44acb6
mov rax, qword [rsp + 0x240]
mov ecx, dword [rax + 0x10]
jmp 0x44acb9
or ecx, 0xffffffff
movsxd rbx, ecx
add rbx, rdi
mov rcx, rbx
call fcn.006a5458
mov dword [rsp + 0x558], eax
call fcn.006a60bc
cmp dword [rax], 0x22
jne 0x44ace7
mov rcx, rbx
call fcn.006a5464
mov qword [rsp + 0x50], rax
jmp 0x44acf3
mov eax, dword [rsp + 0x558]
mov qword [rsp + 0x50], rax
cmp dword [rsp + 0x238], 3
jle 0x44ad0a
mov rax, qword [rsp + 0x240]
mov ecx, dword [rax + 0x18]
jmp 0x44ad0d
or ecx, 0xffffffff
movsxd rbx, ecx
add rbx, rdi
mov rcx, rbx
call fcn.006a5458
mov dword [rsp + 0x558], eax
call fcn.006a60bc
cmp dword [rax], 0x22
jne 0x44ad3b
mov rcx, rbx
call fcn.006a5464
mov qword [rsp + 0x48], rax
jmp 0x44ad47
mov eax, dword [rsp + 0x558]
mov qword [rsp + 0x48], rax
mov ecx, dword [rsp + 0x238]
cmp ecx, 4
jle 0x44ad60
mov rax, qword [rsp + 0x240]
mov edx, dword [rax + 0x20]
jmp 0x44ad6b
or edx, 0xffffffff
mov rax, qword [rsp + 0x240]
movsxd rbx, edx
add rbx, rdi
movzx r9d, word [rbx]
mov dword [rsp + 0x558], r9d
cmp ecx, 5
jle 0x44ad87
mov edx, dword [rax + 0x28]
jmp 0x44ad8a
or edx, 0xffffffff
movsxd r8, edx
add r8, rdi
cmp ecx, 5
jle 0x44ad9a
mov ecx, dword [rax + 0x2c]
jmp 0x44ad9d
or ecx, 0xffffffff
movsxd rax, ecx
mov byte [rax + rdi], r12b
mov rcx, qword [r13 + 0xb0]
sub rcx, qword [r13 + 0xa8]
sar rcx, 3
sub rcx, r14
mov rax, r9
xor edx, edx
div rcx
mov rcx, qword [r13 + 0xa8]
mov rax, qword [rcx + rdx*8]
mov rcx, qword [rcx + rdx*8 + 8]
cmp rax, rcx
je 0x44ade9
cmp dword [rax + 8], r9d
je 0x44ade4
mov rax, qword [rax]
cmp rax, rcx
jne 0x44add6
cmp rax, rcx
jne 0x44adec
mov rax, r12
cmp rax, r12
jne 0x44affc
lea rdx, [rsp + 0x1a8]
lea rcx, [0x008ade00]
call fcn.0044fc90
mov rcx, qword [rax]
mov qword [rsp + 0x60], rcx
mov r9d, 2
mov r8, rbx
lea rdx, [rsp + 0x1a0]
lea rcx, [0x008ade00]
call fcn.0044fd94
mov rcx, qword [rax]
mov qword [rsp + 0x68], rcx
mov rdi, qword [r13 + 0x110]
sub rdi, qword [r13 + 0x108]
sar rdi, 5
mov qword [rsp + 0x80], rdi
mov dword [rsp + 0x74], edi
mov rsi, qword [r13 + 0x110]
cmp rsi, qword [r13 + 0x118]
je 0x44ae84
mov rcx, rsi
lea rdx, [rsp + 0x60]
mov r8d, 0x20
call fcn.006a4bf0
add qword [r13 + 0x110], 0x20
jmp 0x44afca
mov qword [rsp + 0x58], r14
mov rcx, rsi
sub rcx, qword [r13 + 0x108]
sar rcx, 5
mov qword [rsp + 0x568], rcx
movabs rdx, 0x7ffffffffffffff
mov rax, rdx
sub rax, rcx
cmp rax, r14
jb 0x44b0ff
lea rax, [rsp + 0x568]
lea rdi, [rsp + 0x58]
cmp rcx, r14
cmovbe rax, rdi
mov rax, qword [rax]
lea rdi, [rcx + rax]
cmp rdi, rdx
ja 0x44aedd
cmp rdi, rcx
jae 0x44aee0
mov rdi, rdx
cmp rdi, rdx
ja 0x44b0c4
cmp rdi, r12
je 0x44af2a
shl rdi, 5
mov qword [rsp + 0x560], rdi
cmp rdi, r15
jbe 0x44af0c
mov rcx, rdi
call fcn.006a494c
mov rbx, rax
jmp 0x44af1c
lea rcx, [rsp + 0x560]
call fcn.006a36c0
mov rbx, rax
mov rdi, qword [rsp + 0x560]
shr rdi, 5
jmp 0x44af2d
mov rbx, r12
mov rdx, qword [r13 + 0x108]
sub rsi, rdx
je 0x44af51
mov r8, rsi
mov rcx, rbx
call fcn.006a4bf0
add rax, rsi
mov qword [rsp + 0x568], rax
jmp 0x44af5c
mov rax, rbx
mov qword [rsp + 0x568], rbx
mov rcx, rax
lea rdx, [rsp + 0x60]
mov r8d, 0x20
call fcn.006a4bf0
mov rsi, qword [rsp + 0x568]
add rsi, 0x20
mov rcx, qword [r13 + 0x108]
mov rdx, qword [r13 + 0x118]
sub rdx, rcx
cmp rcx, r12
je 0x44afa6
and rdx, 0xffffffffffffffe0
cmp rdx, r15
jbe 0x44afa1
call fcn.006a4944
jmp 0x44afa6
call fcn.006a3610
shl rdi, 5
add rdi, rbx
mov qword [r13 + 0x108], rbx
mov qword [r13 + 0x110], rsi
mov qword [r13 + 0x118], rdi
mov rdi, qword [rsp + 0x80]
mov eax, dword [rsp + 0x558]
mov dword [rsp + 0x40], eax
mov dword [rsp + 0x44], edi
lea r8, [rsp + 0x40]
lea rdx, [rsp + 0x318]
lea rcx, [r13 + 0x98]
call fcn.0044d648
mov rsi, qword [rsp + 0xb8]
jmp 0x44b028
mov edi, dword [rax + 0xc]
lea rdx, [rsp + 0x158]
lea rcx, [0x008ade00]
call fcn.0044fc90
mov rdx, qword [rax]
mov rcx, qword [r13 + 0x108]
mov rax, rdi
shl rax, 5
mov qword [rax + rcx], rdx
lea rcx, [r13 + 8]
mov rax, qword [rsp + 0x50]
mov dword [rsp + 0x160], eax
mov rax, qword [rsp + 0x48]
mov dword [rsp + 0x164], eax
mov dword [rsp + 0x168], edi
mov rdx, qword [rcx + 8]
cmp rdx, qword [rcx + 0x10]
je 0x44b079
cmp rdx, r12
je 0x44b072
lea rdi, [rsp + 0x160]
mov eax, dword [rdi]
mov dword [rdx], eax
mov eax, dword [rdi + 4]
mov dword [rdx + 4], eax
mov eax, dword [rdi + 8]
mov dword [rdx + 8], eax
add qword [rcx + 8], 0xc
jmp 0x44b098
mov byte [rsp + 0x28], r14b
mov qword [rsp + 0x20], r14
lea r9, [rsp + 0x558]
lea r8, [rsp + 0x160]
call fcn.0044e184
lea rbx, [rsi + 1]
mov r8, rbx
mov dl, 0xa
lea rcx, [rsp + 0x88]
call fcn.00420e80
mov rsi, rax
mov qword [rsp + 0xb8], rax
cmp rax, 0xffffffffffffffff
je 0x44b10c
jmp 0x44ac4e
mov r8d, r14d
lea rdx, str.bad_allocation
lea rcx, [rsp + 0x300]
call fcn.006a4a74
lea rdx, vtable.std::bad_alloc.0
mov qword [rsp + 0x300], rdx
lea rdx, [0x00850ba0]
lea rcx, [rsp + 0x300]
call fcn.006ab82c
int3
lea rcx, str.vector
call fcn.006a4230
nop
lea rcx, [rsp + 0x220]
call fcn.00583350
mov rcx, qword [rsp + 0xb0]
lea rax, [rsp + 0x88]
cmp rcx, rax
je 0x44b14f
cmp rcx, r12
je 0x44b14f
mov rdx, qword [rsp + 0x88]
sub rdx, rcx
cmp rdx, r15
jbe 0x44b14a
call fcn.006a4944
jmp 0x44b14f
call fcn.006a3610
lea rcx, [r13 + 8]
xor edx, edx
call fcn.0044d814
mov dword [rsp + 0x30], 0xa000
mov dword [rsp + 0x28], r12d
mov dword [rsp + 0x20], 0xff000000
mov edx, 0x123
mov r9d, 8
lea r8d, [r9 + 0x11]
mov rcx, qword [0x00861be0]
call qword [sym.imp.COMCTL32.dll_ImageList_LoadImageW]
mov qword [r13 + 0x128], rax
mov rcx, rax
call qword [sym.imp.COMCTL32.dll_ImageList_GetImageCount]
mov dword [rsp + 0x560], eax
mov rdx, qword [r13 + 0x58]
mov rax, qword [r13 + 0x50]
cmp rax, rdx
je 0x44b1c9
mov rdi, rdx
sub rdi, rdx
je 0x44b1c5
mov r8, rdi
mov rcx, rax
call fcn.006a4bf0
add rax, rdi
mov qword [r13 + 0x58], rax
lea rdi, [r13 + 0x68]
cmp qword [rdi + 0x20], r12
je 0x44b1ef
mov rdx, qword [rdi + 8]
mov rcx, rdi
call fcn.004a1e58
mov qword [rdi + 0x10], rdi
mov qword [rdi + 8], r12
mov qword [rdi + 0x18], rdi
mov qword [rdi + 0x20], r12
lea r8, str.CustomLocations.zip
lea rdx, [0x0085e958]
lea rcx, [rsp + 0x2a8]
call fcn.00402658
mov rdx, rax
lea rcx, [rsp + 0x4a0]
call fcn.00401f00
nop
lea rax, [rsp + 0x2a8]
mov rcx, qword [rsp + 0x2d0]
cmp rcx, rax
je 0x44b251
cmp rcx, r12
je 0x44b251
mov rdx, qword [rsp + 0x2a8]
sub rdx, rcx
cmp rdx, r15
jbe 0x44b24c
call fcn.006a4944
jmp 0x44b251
call fcn.006a3610
mov qword [rsp + 0x128], r12
mov qword [rsp + 0x130], r12
mov qword [rsp + 0x138], r12
mov qword [rsp + 0x140], r12
mov qword [rsp + 0x148], r12
movss xmm0, dword [0x007c50f8]
movss dword [rsp + 0x150], xmm0
xor ecx, ecx
call fcn.006a3f70
lea rdi, [rax + 1]
mov rdx, rdi
lea rcx, [rsp + 0x130]
call fcn.00403fe0
mov qword [rsp + 0x558], r12
lea r8, [rsp + 0x558]
mov rdx, rdi
lea rcx, [rsp + 0x130]
call fcn.00403d94
nop
lea rdx, [rsp + 0x4a0]
lea rcx, [rsp + 0x330]
call fcn.005eebfc
nop
lea rcx, [rsp + 0x330]
call fcn.005eeca8
mov ebx, 0x18
movss xmm7, dword [0x007c7d6c]
movss xmm6, dword [0x007c7d98]
mov edx, 0x2e
lea rcx, [rsp + 0x394]
call fcn.006a6144
cmp rax, r12
je 0x44b811
lea rdx, [0x00798584]
mov rcx, rax
call fcn.006a525c
cmp eax, r12d
jne 0x44b811
mov ecx, dword [rsp + 0x360]
call fcn.006a43c4
mov rdi, rax
mov qword [rsp + 0x158], rax
lea rcx, [rsp + 0x330]
call fcn.005eedb4
mov r8d, dword [rsp + 0x360]
mov rdx, rdi
lea rcx, [rsp + 0x330]
call fcn.005eee34
mov eax, dword [rdi + 0x12]
mov dword [rsp + 0x568], eax
mov esi, dword [rdi + 0x16]
movzx ecx, word [rdi + 0x1c]
mov word [rsp + 0x558], cx
mov edx, 0x4d42
cmp word [rdi], dx
jne 0x44b703
cmp eax, 0x19
jne 0x44b703
cmp esi, 0x10
jne 0x44b703
cmp cx, bx
jne 0x44b703
mov dword [rsp + 0x88], 0x28
mov dword [rsp + 0x8c], eax
mov dword [rsp + 0x90], esi
mov word [rsp + 0x94], r14w
mov word [rsp + 0x96], bx
mov dword [rsp + 0x98], r12d
xor edx, edx
lea r8d, [rax - 5]
lea rcx, [rsp + 0x9c]
call fcn.006aba40
xor r11d, r11d
mov dword [rsp + 0xb0], r11d
mov dword [rsp + 0x28], r12d
mov qword [rsp + 0x20], r12
lea r9, [rsp + 0x80]
xor r8d, r8d
lea rdx, [rsp + 0x88]
xor ecx, ecx
call qword [sym.imp.GDI32.dll_CreateDIBSection]
mov qword [rsp + 0x50], rax
mov r11, qword [rsp + 0x80]
mov qword [rsp + 0x40], r11
mov r10d, dword [rdi + 0xa]
add r10, rdi
mov qword [rsp + 0x58], r10
lea eax, [rsi + 0x3c]
mov ebx, r12d
cmp ebx, esi
jge 0x44b491
mov ecx, ebx
imul ecx, eax
movsxd r9, ecx
movzx eax, word [rsp + 0x558]
imul eax, dword [rsp + 0x568]
cdq
and edx, 7
add eax, edx
sar eax, 3
movsxd r8, eax
lea rdx, [r9 + r10]
lea rcx, [r9 + r11]
call fcn.006a4bf0
add ebx, r14d
mov r10, qword [rsp + 0x58]
mov r11, qword [rsp + 0x40]
mov eax, 0x4c
jmp 0x44b448
call qword [sym.imp.GDI32.dll_GdiFlush]
mov r8d, reloc.WS2_32.dll_getsockopt
mov rbx, qword [rsp + 0x50]
mov rdx, rbx
mov rcx, qword [r13 + 0x128]
call qword [sym.imp.COMCTL32.dll_ImageList_AddMasked]
mov rcx, rbx
call qword [sym.imp.GDI32.dll_DeleteObject]
mov eax, dword [rsp + 0x560]
mov ebx, eax
add eax, r14d
mov dword [rsp + 0x560], eax
lea r8, [rsp + 0x558]
lea rdx, [rsp + 0x394]
lea rcx, [rsp + 0x270]
call fcn.004021a8
mov dword [rsp + 0x2a0], ebx
mov rax, qword [rsp + 0x148]
inc rax
mov rbx, qword [rsp + 0x138]
mov rdx, rbx
mov r8, qword [rsp + 0x130]
sub rdx, r8
sar rdx, 3
sub rdx, r14
pxor xmm0, xmm0
cvtsi2ss xmm0, rax
test rax, rax
jns 0x44b52c
addss xmm0, xmm7
divss xmm0, dword [rsp + 0x150]
xor eax, eax
comiss xmm0, xmm6
jbe 0x44b552
subss xmm0, xmm6
comiss xmm0, xmm6
jae 0x44b552
movabs rcx, 0x8000000000000000
mov rax, rcx
cvttss2si rcx, xmm0
add rcx, rax
cmp rcx, rdx
jbe 0x44b584
call fcn.006a3f70
mov rdx, rax
lea rcx, [rsp + 0x120]
call fcn.0044ec70
mov rbx, qword [rsp + 0x138]
mov r8, qword [rsp + 0x130]
sub rbx, r8
sar rbx, 3
sub rbx, r14
lea rdx, [rsp + 0x270]
lea rcx, [rsp + 0x120]
call fcn.00403c88
xor edx, edx
div rbx
mov qword [rsp + 0x568], rdx
mov rcx, qword [rsp + 0x130]
mov rbx, qword [rcx + rdx*8]
mov rsi, qword [rcx + rdx*8 + 8]
cmp rbx, rsi
je 0x44b629
cmp rbx, rsi
je 0x44b5f2
mov rdx, qword [rsp + 0x298]
mov rcx, qword [rbx + 0x30]
call fcn.006a525c
cmp eax, r12d
je 0x44b6ba
mov rbx, qword [rbx]
mov rcx, qword [rsp + 0x130]
jmp 0x44b5c6
mov rax, qword [rsp + 0x568]
mov rbx, qword [rcx + rax*8]
lea rdx, [rsp + 0x270]
lea rcx, [rsp + 0x128]
call fcn.0044e8ec
mov rcx, qword [rbx]
mov qword [rax], rcx
mov qword [rbx], rax
add qword [rsp + 0x148], r14
jmp 0x44b6ba
mov qword [rsp + 0x558], rdx
lea r9, [rsp + 0x558]
lea r8, [rsp + 0x130]
lea rdx, [rsp + 0x128]
lea rcx, [rsp + 0x48]
call fcn.005b905c
lea rdx, [rsp + 0x270]
lea rcx, [rsp + 0x128]
call fcn.0044e8ec
mov r11, rax
mov rcx, qword [rsp + 0x48]
mov rdx, qword [rcx]
mov qword [rax], rdx
mov qword [rcx], rax
mov rdx, qword [rsp + 0x130]
mov rcx, qword [rsp + 0x558]
lea r8, [rdx + rcx*8]
sub rdx, r8
mov rax, qword [rsp + 0x568]
lea rcx, [rdx + rax*8 + 8]
sar rcx, 3
cmp rcx, r12
jle 0x44b6b2
mov qword [r8], r11
add r8, 8
sub rcx, r14
jmp 0x44b6a1
add qword [rsp + 0x148], r14
lea rax, [rsp + 0x270]
mov rcx, qword [rsp + 0x298]
cmp rcx, rax
je 0x44b6f1
cmp rcx, r12
je 0x44b6f1
mov rdx, qword [rsp + 0x270]
sub rdx, rcx
cmp rdx, r15
jbe 0x44b6eb
call fcn.006a4944
jmp 0x44b6f1
call fcn.006a3610
nop
mov rcx, rdi
call fcn.006a5088
mov ebx, 0x18
jmp 0x44b811
lea r8, [rsp + 0x558]
lea rdx, str.Invalid_CustomLocations.zip_
lea rcx, [rsp + 0xf0]
call fcn.004021a8
nop
lea r8, [rsp + 0x394]
mov rdx, rax
lea rcx, [rsp + 0x170]
call fcn.00402658
nop
lea r8, str.__expected_bitmap_25x16_24bpp
mov rdx, rax
lea rcx, [rsp + 0xc0]
call fcn.00402658
nop
xor r8d, r8d
mov rdx, rax
mov rcx, qword [0x00862cd0]
call fcn.00415954
nop
lea rax, [rsp + 0xc0]
mov rcx, qword [rsp + 0xe8]
cmp rcx, rax
je 0x44b79b
cmp rcx, r12
je 0x44b79b
mov rdx, qword [rsp + 0xc0]
sub rdx, rcx
cmp rdx, r15
jbe 0x44b795
call fcn.006a4944
jmp 0x44b79b
call fcn.006a3610
nop
lea rax, [rsp + 0x170]
mov rcx, qword [rsp + 0x198]
cmp rcx, rax
je 0x44b7d2
cmp rcx, r12
je 0x44b7d2
mov rdx, qword [rsp + 0x170]
sub rdx, rcx
cmp rdx, r15
jbe 0x44b7cc
call fcn.006a4944
jmp 0x44b7d2
call fcn.006a3610
nop
lea rax, [rsp + 0xf0]
mov rcx, qword [rsp + 0x118]
cmp rcx, rax
je 0x44b809
cmp rcx, r12
je 0x44b809
mov rdx, qword [rsp + 0xf0]
sub rdx, rcx
cmp rdx, r15
jbe 0x44b803
call fcn.006a4944
jmp 0x44b809
call fcn.006a3610
nop
mov rcx, rdi
call fcn.006a5088
lea rcx, [rsp + 0x330]
call fcn.005eed28
cmp al, r12b
jne 0x44b2fe
lea rcx, [rsp + 0x330]
call fcn.005eeca8
lea r8, [rsp + 0x558]
lea rdx, [rsp + 0x394]
lea rcx, [rsp + 0x170]
call fcn.004021a8
nop
or r8, 0xffffffffffffffff
mov dl, 0x2f
lea rcx, [rsp + 0x170]
call fcn.00445538
mov rdi, rax
cmp rax, 0xffffffffffffffff
jne 0x44b873
mov rdi, r12
jmp 0x44b876
add rdi, r14
mov rcx, qword [rsp + 0x198]
add rcx, rdi
lea rdx, str.city.map
call fcn.006a525c
cmp eax, r12d
je 0x44b8d8
lea rax, [rsp + 0x170]
mov rcx, qword [rsp + 0x198]
cmp rcx, rax
je 0x44bf31
cmp rcx, r12
je 0x44bf31
mov rdx, qword [rsp + 0x170]
sub rdx, rcx
cmp rdx, r15
jbe 0x44b8ce
call fcn.006a4944
jmp 0x44bf31
call fcn.006a3610
jmp 0x44bf31
mov r9, rdi
xor r8d, r8d
lea rdx, [rsp + 0x1e0]
lea rcx, [rsp + 0x170]
call fcn.00420df8
nop
mov esi, dword [rsp + 0x360]
mov qword [rsp + 0x558], rsi
lea rcx, [rsi + 1]
call fcn.006a43c4
mov rbx, rax
mov qword [rsp + 0x158], rax
lea rcx, [rsp + 0x330]
call fcn.005eedb4
mov r8, rsi
mov rdx, rbx
lea rcx, [rsp + 0x330]
call fcn.005eee34
lea rax, [rbx + rsi]
mov byte [rax], r12b
mov qword [rsp + 0x118], rbx
mov qword [rsp + 0x110], rax
lea r9, [rsp + 0xf0]
mov dword [rsp + 0x74], r12d
mov rdi, r12
cmp rdi, rsi
jae 0x44bf0d
mov r8, rdi
mov dl, 0xa
mov rcx, r9
call fcn.00420e80
mov rdx, rax
cmp rax, 0xffffffffffffffff
cmove rdx, rsi
lea rax, [rdx + 1]
mov qword [rsp + 0x58], rax
lea r9, [rsp + 0xf0]
cmp rdx, rdi
jbe 0x44b9b3
mov rax, qword [r9 + 0x28]
cmp byte [rax + rdx - 1], 0xd
je 0x44b9ae
cmp byte [rax + rdx - 1], 9
je 0x44b9ae
cmp byte [rax + rdx - 1], 0x20
jne 0x44b9b3
sub rdx, r14
jmp 0x44b990
mov rcx, qword [r9 + 0x28]
mov byte [rcx + rdx], r12b
lea rax, [rdi + 4]
cmp rdx, rax
jb 0x44bf03
lea rsi, [rcx + rdi]
mov qword [rsp + 0xe8], rsi
mov rax, rsi
sub rax, rdi
add rax, rdx
mov qword [rsp + 0xe0], rax
xor r8d, r8d
mov dl, 0x3d
lea rcx, [rsp + 0xc0]
call fcn.00420e80
mov rdi, rax
cmp rax, 0xffffffffffffffff
je 0x44bcf9
cmp rax, r12
je 0x44bcf9
mov r9, rax
xor r8d, r8d
lea rdx, [rsp + 0x88]
lea rcx, [rsp + 0xc0]
call fcn.00420df8
nop
lea r8, [rdi + 1]
or r9, 0xffffffffffffffff
lea rdx, [rsp + 0x1b0]
lea rcx, [rsp + 0xc0]
call fcn.00420df8
nop
lea r8, [rsp + 0x1b0]
lea rdx, [rsp + 0x1e0]
lea rcx, [rsp + 0xc0]
call fcn.00402448
mov r8, rax
lea rdx, [rsp + 0x560]
lea rcx, [rsp + 0x120]
call fcn.0044e754
lea rdx, [rsp + 0xc0]
mov rcx, qword [rsp + 0xe8]
cmp rcx, rdx
je 0x44bab2
cmp rcx, r12
je 0x44bab2
mov rdx, qword [rsp + 0xc0]
sub rdx, rcx
cmp rdx, r15
jbe 0x44baad
call fcn.006a4944
jmp 0x44bab2
call fcn.006a3610
mov rdi, qword [rsp + 0x560]
cmp rdi, r12
jne 0x44bb91
lea r8, [rsp + 0x1b0]
lea rdx, [rsp + 0x1a0]
lea rcx, [rsp + 0x120]
call fcn.0044e754
mov rdi, qword [rax]
mov qword [rsp + 0x560], rdi
cmp rdi, r12
jne 0x44bb91
lea rax, [rsp + 0x1b0]
mov rcx, qword [rsp + 0x1d8]
cmp rcx, rax
je 0x44bb2b
cmp rcx, r12
je 0x44bb2b
mov rdx, qword [rsp + 0x1b0]
sub rdx, rcx
cmp rdx, r15
jbe 0x44bb25
call fcn.006a4944
jmp 0x44bb2b
call fcn.006a3610
nop
lea rax, [rsp + 0x88]
mov rcx, qword [rsp + 0xb0]
cmp rcx, rax
je 0x44beab
cmp rcx, r12
je 0x44be99
mov rdx, qword [rsp + 0x88]
sub rdx, rcx
cmp rdx, r15
jbe 0x44bb77
call fcn.006a4944
mov rsi, qword [rsp + 0x558]
lea r9, [rsp + 0xf0]
jmp 0x44bf03
call fcn.006a3610
mov rsi, qword [rsp + 0x558]
lea r9, [rsp + 0xf0]
jmp 0x44bf03
lea r8, [rsp + 0x88]
lea rdx, [rsp + 0x568]
lea rcx, [r13 + 0xd0]
call fcn.0044e754
mov r11, qword [rsp + 0x568]
cmp r11, r12
je 0x44bbd5
mov rdx, qword [r13 + 0x108]
mov ecx, dword [r11 + 0x38]
shl rcx, 5
mov eax, dword [rdi + 0x38]
mov dword [rcx + rdx + 0x10], eax
jmp 0x44bc5c
mov eax, dword [rdi + 0x38]
mov dword [rsp + 0x70], eax
mov r8, qword [rsp + 0xb0]
lea rdx, [rsp + 0x1a8]
lea rcx, [0x008ade00]
call fcn.0044fc90
mov rax, qword [rax]
mov qword [rsp + 0x60], rax
mov rax, qword [r13 + 0x110]
sub rax, qword [r13 + 0x108]
sar rax, 5
mov dword [rsp + 0x78], eax
mov rax, qword [0x0085e848]
mov qword [rsp + 0x68], rax
mov rsi, qword [r13 + 0x110]
sub rsi, qword [r13 + 0x108]
sar rsi, 5
lea rdx, [rsp + 0x88]
lea rcx, [r13 + 0xd0]
call fcn.0044e7dc
mov dword [rax], esi
lea rdx, [rsp + 0x60]
lea rcx, [r13 + 0x108]
call fcn.0044d7c0
nop
lea rax, [rsp + 0x1b0]
mov rcx, qword [rsp + 0x1d8]
cmp rcx, rax
je 0x44bc93
cmp rcx, r12
je 0x44bc93
mov rdx, qword [rsp + 0x1b0]
sub rdx, rcx
cmp rdx, r15
jbe 0x44bc8d
call fcn.006a4944
jmp 0x44bc93
call fcn.006a3610
nop
lea rax, [rsp + 0x88]
mov rcx, qword [rsp + 0xb0]
cmp rcx, rax
je 0x44be87
cmp rcx, r12
je 0x44be75
mov rdx, qword [rsp + 0x88]
sub rdx, rcx
cmp rdx, r15
jbe 0x44bcdf
call fcn.006a4944
mov rsi, qword [rsp + 0x558]
lea r9, [rsp + 0xf0]
jmp 0x44bf03
call fcn.006a3610
mov rsi, qword [rsp + 0x558]
lea r9, [rsp + 0xf0]
jmp 0x44bf03
xor r8d, r8d
mov dl, 0x3a
lea rcx, [rsp + 0xc0]
call fcn.00420e80
mov rdi, rax
cmp rax, 0xffffffffffffffff
je 0x44bef3
cmp rax, r12
je 0x44bee1
mov r9, rax
xor r8d, r8d
lea rdx, [rsp + 0x88]
lea rcx, [rsp + 0xc0]
call fcn.00420df8
nop
lea r8, [rsi + rdi + 1]
lea rdx, [rsp + 0x40]
lea rcx, [0x008ade00]
call fcn.0044fc90
mov rsi, qword [rax]
lea r8, [rsp + 0x88]
lea rdx, [rsp + 0x80]
lea rcx, [r13 + 0xd0]
call fcn.0044e754
mov rdx, qword [rsp + 0x80]
cmp rdx, r12
je 0x44bd94
mov rcx, qword [r13 + 0x108]
mov eax, dword [rdx + 0x38]
shl rax, 5
mov qword [rax + rcx + 8], rsi
jmp 0x44be0f
or dword [rsp + 0x70], 0xffffffff
mov r8, qword [rsp + 0xb0]
lea rdx, [rsp + 0x50]
lea rcx, [0x008ade00]
call fcn.0044fc90
mov rax, qword [rax]
mov qword [rsp + 0x60], rax
mov rax, qword [r13 + 0x110]
sub rax, qword [r13 + 0x108]
sar rax, 5
mov dword [rsp + 0x78], eax
mov qword [rsp + 0x68], rsi
mov rsi, qword [r13 + 0x110]
sub rsi, qword [r13 + 0x108]
sar rsi, 5
lea rdx, [rsp + 0x88]
lea rcx, [r13 + 0xd0]
call fcn.0044e7dc
mov dword [rax], esi
lea rdx, [rsp + 0x60]
lea rcx, [r13 + 0x108]
call fcn.0044d7c0
nop
lea rax, [rsp + 0x88]
mov rcx, qword [rsp + 0xb0]
cmp rcx, rax
je 0x44becf
cmp rcx, r12
je 0x44bebd
mov rdx, qword [rsp + 0x88]
sub rdx, rcx
cmp rdx, r15
jbe 0x44be5b
call fcn.006a4944
mov rsi, qword [rsp + 0x558]
lea r9, [rsp + 0xf0]
jmp 0x44bf03
call fcn.006a3610
mov rsi, qword [rsp + 0x558]
lea r9, [rsp + 0xf0]
jmp 0x44bf03
mov rsi, qword [rsp + 0x558]
lea r9, [rsp + 0xf0]
jmp 0x44bf03
mov rsi, qword [rsp + 0x558]
lea r9, [rsp + 0xf0]
jmp 0x44bf03
mov rsi, qword [rsp + 0x558]
lea r9, [rsp + 0xf0]
jmp 0x44bf03
mov rsi, qword [rsp + 0x558]
lea r9, [rsp + 0xf0]
jmp 0x44bf03
mov rsi, qword [rsp + 0x558]
lea r9, [rsp + 0xf0]
jmp 0x44bf03
mov rsi, qword [rsp + 0x558]
lea r9, [rsp + 0xf0]
jmp 0x44bf03
mov rsi, qword [rsp + 0x558]
lea r9, [rsp + 0xf0]
jmp 0x44bf03
mov rsi, qword [rsp + 0x558]
lea r9, [rsp + 0xf0]
mov rdi, qword [rsp + 0x58]
jmp 0x44b95e
mov rcx, rbx
call fcn.006a5088
nop
lea rcx, [rsp + 0x1e0]
call fcn.00402b3c
nop
lea rcx, [rsp + 0x170]
call fcn.00402b3c
lea rcx, [rsp + 0x330]
call fcn.005eed28
cmp al, r12b
jne 0x44b834
lea rcx, [rsp + 0x330]
call fcn.005eeca8
mov edx, 0x2e
lea rcx, [rsp + 0x394]
call fcn.006a6144
cmp rax, r12
je 0x44c747
lea rdx, str..ini
mov rcx, rax
call fcn.006a525c
cmp eax, r12d
jne 0x44c747
lea r8, [rsp + 0x558]
lea rdx, [rsp + 0x394]
lea rcx, [rsp + 0x170]
call fcn.004021a8
nop
or r8, 0xffffffffffffffff
mov dl, 0x2f
lea rcx, [rsp + 0x170]
call fcn.00445538
cmp rax, 0xffffffffffffffff
jne 0x44bfc3
mov rax, r12
jmp 0x44bfc6
add rax, r14
mov r9, rax
xor r8d, r8d
lea rdx, [rsp + 0x270]
lea rcx, [rsp + 0x170]
call fcn.00420df8
nop
mov edi, dword [rsp + 0x360]
mov qword [rsp + 0x560], rdi
lea rcx, [rdi + 1]
call fcn.006a43c4
mov rsi, rax
mov qword [rsp + 0x158], rax
lea rcx, [rsp + 0x330]
call fcn.005eedb4
mov r8, rdi
mov rdx, rsi
lea rcx, [rsp + 0x330]
call fcn.005eee34
lea rax, [rsi + rdi]
mov byte [rax], r12b
mov qword [rsp + 0x118], rsi
mov qword [rsp + 0x110], rax
lea r9, [rsp + 0xf0]
or dword [rsp + 0x70], 0xffffffff
mov rcx, qword [0x0085e848]
mov qword [rsp + 0x40], rcx
mov qword [rsp + 0x60], rcx
mov qword [rsp + 0x568], rcx
mov qword [rsp + 0x68], rcx
mov dword [rsp + 0x74], r12d
mov r15d, r12d
mov dword [rsp + 0x78], r12d
mov byte [rsp + 0x558], r14b
mov rbx, r12
cmp rbx, rdi
jae 0x44c723
mov r8, rbx
mov dl, 0xa
mov rcx, r9
call fcn.00420e80
mov rdx, rax
cmp rax, 0xffffffffffffffff
cmove rdx, rdi
lea rax, [rdx + 1]
mov qword [rsp + 0x50], rax
lea r9, [rsp + 0xf0]
cmp rdx, rbx
jbe 0x44c0d4
mov rax, qword [r9 + 0x28]
cmp byte [rdx + rax - 1], 0xd
je 0x44c0cf
cmp byte [rdx + rax - 1], 9
je 0x44c0cf
cmp byte [rdx + rax - 1], 0x20
jne 0x44c0d4
sub rdx, r14
jmp 0x44c0b1
mov rcx, qword [r9 + 0x28]
mov byte [rdx + rcx], r12b
lea rax, [rbx + 4]
cmp rdx, rax
jb 0x44c719
lea rdi, [rbx + rcx]
mov qword [rsp + 0x208], rdi
sub rdx, rbx
add rdx, rdi
mov qword [rsp + 0x200], rdx
cmp byte [rdi], 0x30
jl 0x44c190
cmp byte [rdi], 0x39
jg 0x44c190
mov rcx, rdi
call fcn.0058d91c
mov rdi, rax
mov qword [rsp + 0x80], rax
shr rax, 0x20
or eax, edi
je 0x44c6e5
cmp byte [rsp + 0x558], r12b
je 0x44c153
lea rcx, [r13 + 0x108]
lea rdx, [rsp + 0x60]
call fcn.0044d7c0
mov byte [rsp + 0x558], r12b
mov r9, qword [r13 + 0x110]
sub r9, qword [r13 + 0x108]
sar r9, 5
sub r9d, r14d
lea rcx, [r13 + 0x50]
mov r8d, dword [rsp + 0x84]
mov edx, edi
call fcn.0044d5e4
mov rdi, qword [rsp + 0x560]
lea r9, [rsp + 0xf0]
jmp 0x44c719
mov r8d, 5
lea rdx, [0x007985e4]
mov rcx, rdi
call fcn.006a62c8
cmp eax, r12d
jne 0x44c1fa
lea r8, [rdi + 5]
lea rdx, [rsp + 0x1a0]
lea rcx, [0x008ade00]
call fcn.0044fc90
mov rcx, qword [rsp + 0x40]
cmp rcx, qword [rax]
je 0x44c6d3
mov byte [rsp + 0x558], r14b
mov rax, qword [rax]
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x60], rax
mov rdi, qword [rsp + 0x560]
lea r9, [rsp + 0xf0]
jmp 0x44c719
mov r8d, 6
lea rdx, [0x007985ec]
mov rcx, rdi
call fcn.006a62c8
cmp eax, r12d
jne 0x44c322
lea rdx, [rdi + 6]
mov qword [rsp + 0xe8], rdx
xor eax, eax
or rbx, 0xffffffffffffffff
mov rcx, rbx
mov rdi, rdx
repne scasb al, byte [rdi]
not rcx
sub rcx, r14
add rcx, rdx
mov qword [rsp + 0xe0], rcx
lea r8, [rsp + 0xc0]
lea rdx, [rsp + 0x270]
lea rcx, [rsp + 0x1e0]
call fcn.00402448
mov r8, rax
lea rdx, [rsp + 0x1a8]
lea rcx, [rsp + 0x120]
call fcn.0044e754
mov rdi, qword [rax]
lea rcx, [rsp + 0x1e0]
call fcn.00402b3c
cmp rdi, r12
jne 0x44c2b3
lea r8, [rsp + 0xc0]
lea rdx, [rsp + 0x48]
lea rcx, [rsp + 0x120]
call fcn.0044e754
mov rdi, qword [rax]
cmp rdi, r12
jne 0x44c2b3
mov edi, ebx
jmp 0x44c2ba
mov edi, dword [rdi + 0x38]
cmp edi, ebx
jne 0x44c2f7
lea r8, [rsp + 0xc0]
lea rdx, str.CustomLocations.zip:_no_image
lea rcx, [rsp + 0x1e0]
call fcn.0040fe34
nop
xor r8d, r8d
mov rdx, rax
mov rcx, qword [0x00862cd0]
call fcn.00415954
nop
lea rcx, [rsp + 0x1e0]
call fcn.00402b3c
cmp dword [rsp + 0x70], edi
je 0x44c6c1
mov byte [rsp + 0x558], r14b
mov dword [rsp + 0x70], edi
mov rdi, qword [rsp + 0x560]
lea r9, [rsp + 0xf0]
jmp 0x44c719
mov r8d, 5
lea rdx, str.city
mov rcx, rdi
call fcn.006a62c8
cmp eax, r12d
jne 0x44c568
lea rdx, [rdi + 5]
mov qword [rsp + 0xe8], rdx
xor eax, eax
or rcx, 0xffffffffffffffff
mov rdi, rdx
repne scasb al, byte [rdi]
not rcx
sub rcx, r14
lea rax, [rdx + rcx]
mov qword [rsp + 0xe0], rax
mov rdi, qword [r13 + 0xe8]
sub rdi, qword [r13 + 0xe0]
sar rdi, 3
sub rdi, r14
lea rdx, [rsp + 0xc0]
lea rcx, [r13 + 0xd0]
call fcn.00403c88
xor edx, edx
div rdi
mov rbx, qword [r13 + 0xe0]
mov rdi, qword [rbx + rdx*8]
mov rbx, qword [rbx + rdx*8 + 8]
cmp rdi, rbx
je 0x44c3d6
mov rdx, qword [rsp + 0xe8]
mov rcx, qword [rdi + 0x30]
call fcn.006a525c
cmp eax, r12d
je 0x44c3c7
mov rdi, qword [rdi]
jmp 0x44c3a7
cmp rdi, rbx
je 0x44c3d6
lea rax, [rsp + 0x58]
mov qword [rax], rdi
jmp 0x44c3de
lea rax, [rsp + 0x58]
mov qword [rax], r12
mov rax, qword [rax]
cmp rax, r12
je 0x44c445
cmp r15d, dword [rax + 0x38]
je 0x44c6af
mov r15d, dword [rax + 0x38]
mov dword [rsp + 0x78], r15d
mov rcx, r15
shl rcx, 5
mov rax, qword [r13 + 0x108]
mov rdx, qword [rcx + rax + 8]
mov rax, qword [rsp + 0x568]
cmp byte [rdx], r12b
cmovne rax, rdx
mov qword [rsp + 0x568], rax
mov qword [rsp + 0x68], rax
mov byte [rsp + 0x558], r14b
mov rdi, qword [rsp + 0x560]
lea r9, [rsp + 0xf0]
jmp 0x44c719
mov r15, qword [r13 + 0x110]
sub r15, qword [r13 + 0x108]
sar r15, 5
mov dword [rsp + 0x78], r15d
mov byte [rsp + 0x558], r14b
or dword [rsp + 0x98], 0xffffffff
mov dword [rsp + 0x9c], r12d
mov rax, qword [0x0085e848]
mov qword [rsp + 0x90], rax
lea r8, [rsp + 0x1e0]
mov r8, qword [r8 + 0x28]
add r8, 5
lea rdx, [rsp + 0xb8]
lea rcx, [0x008ade00]
call fcn.0044fc90
mov rax, qword [rax]
mov qword [rsp + 0x88], rax
mov dword [rsp + 0xa0], r15d
mov rax, qword [rsp + 0xe8]
mov qword [rsp + 0x208], rax
mov rax, qword [rsp + 0xe0]
mov qword [rsp + 0x200], rax
mov dword [rsp + 0x210], r15d
lea rdx, [rsp + 0x1e0]
lea rcx, [rsp + 0x220]
call fcn.004029b4
mov dword [rsp + 0x250], r15d
mov rdx, qword [r13 + 0xf8]
add rdx, r14
lea rcx, [r13 + 0xd0]
call fcn.0044e46c
lea r8, [rsp + 0x220]
lea rdx, [rsp + 0x1b0]
lea rcx, [r13 + 0xd0]
call fcn.0044e344
nop
lea rcx, [rsp + 0x220]
call fcn.00402b3c
lea rdx, [rsp + 0x88]
lea rcx, [r13 + 0x108]
call fcn.0044d7c0
mov rdi, qword [rsp + 0x560]
lea r9, [rsp + 0xf0]
jmp 0x44c719
mov r8d, 8
lea rdx, str.country
mov rcx, rdi
call fcn.006a62c8
cmp eax, r12d
jne 0x44c617
movzx edi, word [rdi + 8]
lea r8, [rsp + 0x318]
mov rcx, qword [r13 + 0xb0]
sub rcx, qword [r13 + 0xa8]
sar rcx, 3
sub rcx, r14
mov rax, rdi
xor edx, edx
div rcx
mov rcx, qword [r13 + 0xa8]
mov rax, qword [rcx + rdx*8]
cmp rax, qword [rcx + rdx*8 + 8]
je 0x44c5d7
cmp dword [rax + 8], edi
je 0x44c5cb
mov rax, qword [rax]
jmp 0x44c5ba
cmp rax, qword [rcx + rdx*8 + 8]
je 0x44c5d7
mov qword [r8], rax
jmp 0x44c5da
mov qword [r8], r12
mov rax, qword [r8]
cmp rax, r12
je 0x44c69d
mov ecx, dword [rsp + 0x74]
cmp ecx, dword [rax + 0xc]
je 0x44c68b
mov eax, dword [rax + 0xc]
mov dword [rsp + 0x74], eax
mov byte [rsp + 0x558], r14b
mov rdi, qword [rsp + 0x560]
lea r9, [rsp + 0xf0]
jmp 0x44c719
mov r8d, 7
lea rdx, str.region
mov rcx, rdi
call fcn.006a62c8
cmp eax, r12d
jne 0x44c6f7
lea r8, [rdi + 7]
lea rdx, [rsp + 0x160]
lea rcx, [0x008ade00]
call fcn.0044fc90
mov rcx, qword [rsp + 0x568]
cmp rcx, qword [rax]
je 0x44c709
mov byte [rsp + 0x558], r14b
mov rax, qword [rax]
mov qword [rsp + 0x568], rax
mov qword [rsp + 0x68], rax
mov rdi, qword [rsp + 0x560]
lea r9, [rsp + 0xf0]
jmp 0x44c719
mov rdi, qword [rsp + 0x560]
lea r9, [rsp + 0xf0]
jmp 0x44c719
mov rdi, qword [rsp + 0x560]
lea r9, [rsp + 0xf0]
jmp 0x44c719
mov rdi, qword [rsp + 0x560]
lea r9, [rsp + 0xf0]
jmp 0x44c719
mov rdi, qword [rsp + 0x560]
lea r9, [rsp + 0xf0]
jmp 0x44c719
mov rdi, qword [rsp + 0x560]
lea r9, [rsp + 0xf0]
jmp 0x44c719
mov rdi, qword [rsp + 0x560]
lea r9, [rsp + 0xf0]
jmp 0x44c719
mov rdi, qword [rsp + 0x560]
lea r9, [rsp + 0xf0]
jmp 0x44c719
mov rdi, qword [rsp + 0x560]
lea r9, [rsp + 0xf0]
mov rbx, qword [rsp + 0x50]
jmp 0x44c07f
mov rcx, rsi
call fcn.006a5088
nop
lea rcx, [rsp + 0x270]
call fcn.00402b3c
nop
lea rcx, [rsp + 0x170]
call fcn.00402b3c
lea rcx, [rsp + 0x330]
call fcn.005eed28
cmp al, r12b
jne 0x44bf54
lea rcx, [rsp + 0x330]
call fcn.005eec5c
nop
lea rcx, [rsp + 0x120]
call fcn.0042d248
nop
lea rcx, [rsp + 0x4a0]
call fcn.00402278
nop
jmp 0x44c791
lea rcx, [r13 + 0x50]
xor edx, edx
lea r11, [rsp + 0x510]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
jmp fcn.0044d814