Function at 0x43f660
Capabilities:
Get geographical location

Disassembly:
sub esp, 0x42c
mov eax, dword [0x6ab100]
xor eax, esp
mov dword [esp + 0x424], eax
push esi
push edi
push 0
push 0x3b
lea eax, [esp + 0x14]
mov dword [esp + 0x14], ecx
push 0x69a9d4
push eax
mov edx, 4
lea ecx, [esp + 0x30]
call fcn.00455a20
add esp, 0x10
lea ecx, [esp + 0x20]
call fcn.0043f3f0
mov edi, eax
cmp edi, 0xffffffff
je 0x44021a
lea ecx, [esp + 0xc]
call fcn.00455a00
mov esi, dword [esp + 0xc]
lea eax, [esp + 0x1c]
push eax
lea eax, [esp + 0x1c]
push eax
lea eax, [esp + 0x18]
push eax
push str._08x__08X_08X
push esi
call fcn.00437d70
add esp, 0x14
cmp eax, 3
jne 0x43fc8d
add esi, 0x19
lea ecx, [esp + 0xc]
mov dword [esp + 0xc], esi
call fcn.00455a00
mov edx, dword [esp + 0x10]
lea eax, [esp + 0x18]
push eax
mov ecx, edi
call fcn.0043f4d0
add esp, 4
mov edi, eax
mov edx, edi
mov ecx, 0x6de364
call fcn.004557e0
inc dword [0x6de36c]
lea eax, [esp + 0xc]
push 0
push 0x3b
push 0x69a9e8
push eax
xor edx, edx
xor ecx, ecx
call fcn.00455a20
add esp, 0x10
test eax, eax
je 0x43fc8d
push ecx
push 0
mov edx, eax
mov ecx, edi
call fcn.0043f5c0
push 0
push 0x3b
lea eax, [esp + 0x1c]
mov edx, 0x400
push 0x69a9ec
push eax
lea ecx, [esp + 0x38]
call fcn.00455a20
mov esi, eax
add esp, 0x18
test esi, esi
je 0x44021a
nop
mov ecx, esi
call fcn.004556c0
push 5
push str.NAME_
push esi
call fcn.005f9470
add esp, 0xc
test eax, eax
jne 0x43f7d3
lea ecx, [esi + 5]
call fcn.0043f460
mov esi, eax
cmp esi, 0xffffffff
je 0x43fc8d
push 0
push 0x3b
lea eax, [esp + 0x14]
xor edx, edx
push 0x69a9e8
push eax
xor ecx, ecx
call fcn.00455a20
add esp, 0x10
test eax, eax
je 0x44021a
push ecx
push esi
mov edx, eax
mov ecx, edi
call fcn.0043f5c0
add esp, 8
jmp 0x4401f1
mov ecx, str.COUNTRY
mov eax, esi
nop word [eax + eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x43f800
test dl, dl
je 0x43f7fc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x43f800
add eax, 2
add ecx, 2
test dl, dl
jne 0x43f7e0
xor eax, eax
jmp 0x43f805
sbb eax, eax
or eax, 1
test eax, eax
jne 0x43f85f
nop dword [eax]
mov eax, dword [esp + 0xc]
mov al, byte [eax - 1]
cmp al, 0x2c
je 0x43f823
cmp al, 0x3d
jne 0x4401f1
push 0
push 0x3b
lea eax, [esp + 0x14]
mov edx, 3
push 0x69aa00
push eax
lea ecx, [esp + 0x30]
call fcn.00455a20
add esp, 0x10
test eax, eax
je 0x43fc8d
mov ecx, eax
call fcn.0043f460
cmp eax, 0xffffffff
je 0x43fc8d
or dword [edi + 0x14], eax
jmp 0x43f810
mov ecx, str.PRODUCT_NO
mov eax, esi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x43f886
test dl, dl
je 0x43f882
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x43f886
add eax, 2
add ecx, 2
test dl, dl
jne 0x43f866
xor eax, eax
jmp 0x43f88b
sbb eax, eax
or eax, 1
test eax, eax
jne 0x43f8b8
push eax
push 0x3b
lea eax, [esp + 0x14]
xor edx, edx
push 0x69a9e8
push eax
xor ecx, ecx
call fcn.00455a20
add esp, 0x10
test eax, eax
je 0x43fc8d
mov dword [edi + 0x1c], eax
jmp 0x4401f1
mov ecx, str.EMU_COUNTRY
mov eax, esi
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x43f8e0
test dl, dl
je 0x43f8dc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x43f8e0
add eax, 2
add ecx, 2
test dl, dl
jne 0x43f8c0
xor eax, eax
jmp 0x43f8e5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x43f920
push eax
push 0x3b
lea eax, [esp + 0x14]
mov edx, 0x400
push 0x69aa00
push eax
lea ecx, [esp + 0x30]
call fcn.00455a20
add esp, 0x10
test eax, eax
je 0x43fc8d
push eax
call fcn.005f79c7
add esp, 4
mov byte [edi + 0x30], al
jmp 0x4401f1
mov ecx, str.EMU_INPUTS
mov eax, esi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x43f947
test dl, dl
je 0x43f943
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x43f947
add eax, 2
add ecx, 2
test dl, dl
jne 0x43f927
xor eax, eax
jmp 0x43f94c
sbb eax, eax
or eax, 1
test eax, eax
jne 0x43faed
push eax
push 0x3b
lea eax, [esp + 0x14]
mov edx, 0x400
push 0x69a9e8
push eax
lea ecx, [esp + 0x30]
call fcn.00455a20
mov esi, eax
add esp, 0x10
test esi, esi
je 0x43fc8d
mov ecx, esi
call fcn.004556e0
mov edx, str.joypad
mov ecx, esi
nop word [eax + eax]
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x43f9b0
test al, al
je 0x43f9ac
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x43f9b0
add ecx, 2
add edx, 2
test al, al
jne 0x43f990
xor eax, eax
jmp 0x43f9b5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x43f9c1
mov byte [edi + 0x31], al
jmp 0x4401f1
mov ecx, str.lightphaser
mov eax, esi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x43f9e8
test dl, dl
je 0x43f9e4
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x43f9e8
add eax, 2
add ecx, 2
test dl, dl
jne 0x43f9c8
xor eax, eax
jmp 0x43f9ed
sbb eax, eax
or eax, 1
test eax, eax
jne 0x43f9fa
mov byte [edi + 0x31], 1
jmp 0x4401f1
mov ecx, str.paddle
mov eax, esi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x43fa21
test dl, dl
je 0x43fa1d
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x43fa21
add eax, 2
add ecx, 2
test dl, dl
jne 0x43fa01
xor eax, eax
jmp 0x43fa26
sbb eax, eax
or eax, 1
test eax, eax
jne 0x43fa33
mov byte [edi + 0x31], 2
jmp 0x4401f1
mov ecx, str.sportspad
mov eax, esi
nop word [eax + eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x43fa60
test dl, dl
je 0x43fa5c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x43fa60
add eax, 2
add ecx, 2
test dl, dl
jne 0x43fa40
xor eax, eax
jmp 0x43fa65
sbb eax, eax
or eax, 1
test eax, eax
jne 0x43fa72
mov byte [edi + 0x31], 3
jmp 0x4401f1
mov ecx, str.tvoekaki
mov eax, esi
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x43faa0
test dl, dl
je 0x43fa9c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x43faa0
add eax, 2
add ecx, 2
test dl, dl
jne 0x43fa80
xor eax, eax
jmp 0x43faa5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x43fab2
mov byte [edi + 0x31], 4
jmp 0x4401f1
mov eax, str.graphicboardv2
mov cl, byte [esi]
cmp cl, byte [eax]
jne 0x43fad7
test cl, cl
je 0x43fad3
mov cl, byte [esi + 1]
cmp cl, byte [eax + 1]
jne 0x43fad7
add esi, 2
add eax, 2
test cl, cl
jne 0x43fab7
xor eax, eax
jmp 0x43fadc
sbb eax, eax
or eax, 1
test eax, eax
jne 0x43fc8d
mov byte [edi + 0x31], 5
jmp 0x4401f1
mov ecx, str.EMU_IPERIOD
mov eax, esi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x43fb14
test dl, dl
je 0x43fb10
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x43fb14
add eax, 2
add ecx, 2
test dl, dl
jne 0x43faf4
xor eax, eax
jmp 0x43fb19
sbb eax, eax
or eax, 1
test eax, eax
jne 0x43fb55
push eax
push 0x3b
lea eax, [esp + 0x14]
mov edx, 0x400
push 0x69a9e8
push eax
lea ecx, [esp + 0x30]
call fcn.00455a20
add esp, 0x10
test eax, eax
je 0x43fc8d
push eax
call fcn.005f79c7
add esp, 4
mov word [edi + 0x36], ax
jmp 0x4401f1
mov ecx, str.EMU_MAPPER
mov eax, esi
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x43fb80
test dl, dl
je 0x43fb7c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x43fb80
add eax, 2
add ecx, 2
test dl, dl
jne 0x43fb60
xor eax, eax
jmp 0x43fb85
sbb eax, eax
or eax, 1
test eax, eax
jne 0x43fbc0
push eax
push 0x3b
lea eax, [esp + 0x14]
mov edx, 0x400
push 0x69a9e8
push eax
lea ecx, [esp + 0x30]
call fcn.00455a20
add esp, 0x10
test eax, eax
je 0x43fc8d
push eax
call fcn.005f79c7
add esp, 4
mov byte [edi + 0x32], al
jmp 0x4401f1
mov ecx, str.EMU_LP_FUNC
mov eax, esi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x43fbe7
test dl, dl
je 0x43fbe3
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x43fbe7
add eax, 2
add ecx, 2
test dl, dl
jne 0x43fbc7
xor eax, eax
jmp 0x43fbec
sbb eax, eax
or eax, 1
test eax, eax
jne 0x43fc23
push eax
push 0x3b
lea eax, [esp + 0x14]
mov edx, 0x400
push 0x69a9e8
push eax
lea ecx, [esp + 0x30]
call fcn.00455a20
add esp, 0x10
test eax, eax
je 0x43fc8d
push eax
call fcn.005f79c7
add esp, 4
mov byte [edi + 0x35], al
jmp 0x4401f1
mov ecx, str.EMU_VDP
mov eax, esi
nop word [eax + eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x43fc50
test dl, dl
je 0x43fc4c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x43fc50
add eax, 2
add ecx, 2
test dl, dl
jne 0x43fc30
xor eax, eax
jmp 0x43fc55
sbb eax, eax
or eax, 1
test eax, eax
jne 0x43fca6
push eax
push 0x3b
lea eax, [esp + 0x14]
mov edx, 0x400
push 0x69a9e8
push eax
lea ecx, [esp + 0x30]
call fcn.00455a20
add esp, 0x10
test eax, eax
je 0x43fc8d
mov ecx, eax
call fcn.004658a0
mov byte [edi + 0x34], al
cmp al, 0xff
jne 0x4401f1
xor eax, eax
pop edi
pop esi
mov ecx, dword [esp + 0x424]
xor ecx, esp
call fcn.005e8cbe
add esp, 0x42c
ret
mov ecx, str.EMU_TVTYPE
mov eax, esi
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x43fcd0
test dl, dl
je 0x43fccc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x43fcd0
add eax, 2
add ecx, 2
test dl, dl
jne 0x43fcb0
xor eax, eax
jmp 0x43fcd5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x43fd7f
push eax
push 0x3b
lea eax, [esp + 0x14]
mov edx, 0x400
push 0x69a9e8
push eax
lea ecx, [esp + 0x30]
call fcn.00455a20
mov esi, eax
add esp, 0x10
test esi, esi
je 0x43fc8d
mov ecx, esi
call fcn.004556e0
mov ecx, 0x699300
mov eax, esi
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x43fd30
test dl, dl
je 0x43fd2c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x43fd30
add eax, 2
add ecx, 2
test dl, dl
jne 0x43fd10
xor eax, eax
jmp 0x43fd35
sbb eax, eax
or eax, 1
test eax, eax
jne 0x43fd43
mov al, 1
mov byte [edi + 0x33], al
jmp 0x4401f1
mov eax, str.ntsc
mov cl, byte [esi]
cmp cl, byte [eax]
jne 0x43fd68
test cl, cl
je 0x43fd64
mov cl, byte [esi + 1]
cmp cl, byte [eax + 1]
jne 0x43fd68
add esi, 2
add eax, 2
test cl, cl
jne 0x43fd48
xor eax, eax
jmp 0x43fd6d
sbb eax, eax
or eax, 1
test eax, eax
jne 0x43fc8d
xor al, al
mov byte [edi + 0x33], al
jmp 0x4401f1
mov ecx, str.EMU_3D
mov eax, esi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x43fda6
test dl, dl
je 0x43fda2
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x43fda6
add eax, 2
add ecx, 2
test dl, dl
jne 0x43fd86
xor eax, eax
jmp 0x43fdab
sbb eax, eax
or eax, 1
test eax, eax
jne 0x43fdbb
or dword [edi + 0x18], 0x80
jmp 0x4401f1
mov ecx, str.EMU_SPRITE_FLICKER
mov eax, esi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x43fde2
test dl, dl
je 0x43fdde
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x43fde2
add eax, 2
add ecx, 2
test dl, dl
jne 0x43fdc2
xor eax, eax
jmp 0x43fde7
sbb eax, eax
or eax, 1
test eax, eax
jne 0x43fdf7
or dword [edi + 0x18], 0x100
jmp 0x4401f1
mov ecx, str.COMMENT
mov eax, esi
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x43fe20
test dl, dl
je 0x43fe1c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x43fe20
add eax, 2
add ecx, 2
test dl, dl
jne 0x43fe00
xor eax, eax
jmp 0x43fe25
sbb eax, eax
or eax, 1
test eax, eax
jne 0x43fe52
push eax
push 0x3b
lea eax, [esp + 0x14]
xor edx, edx
push 0x69a9e8
push eax
xor ecx, ecx
call fcn.00455a20
add esp, 0x10
test eax, eax
je 0x43fc8d
mov dword [edi + 0x24], eax
jmp 0x4401f1
mov ecx, str.FLAGS
mov eax, esi
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x43fe80
test dl, dl
je 0x43fe7c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x43fe80
add eax, 2
add ecx, 2
test dl, dl
jne 0x43fe60
xor eax, eax
jmp 0x43fe85
sbb eax, eax
or eax, 1
test eax, eax
jne 0x44007d
nop dword [eax]
mov eax, dword [esp + 0xc]
mov al, byte [eax - 1]
cmp al, 0x2c
je 0x43fea3
cmp al, 0x3d
jne 0x4401f1
push 0
push 0x3b
lea eax, [esp + 0x14]
mov edx, 0x10
push 0x69aa00
push eax
lea ecx, [esp + 0x30]
call fcn.00455a20
mov esi, eax
add esp, 0x10
test esi, esi
je 0x43fc8d
mov edx, 0x69aad0
mov ecx, esi
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x43fef3
test al, al
je 0x43feef
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x43fef3
add ecx, 2
add edx, 2
test al, al
jne 0x43fed3
xor eax, eax
jmp 0x43fef8
sbb eax, eax
or eax, 1
test eax, eax
jne 0x43ff02
or dword [edi + 0x18], 1
jmp 0x43fe90
mov ecx, str.BIOS
mov eax, esi
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x43ff30
test dl, dl
je 0x43ff2c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x43ff30
add eax, 2
add ecx, 2
test dl, dl
jne 0x43ff10
xor eax, eax
jmp 0x43ff35
sbb eax, eax
or eax, 1
test eax, eax
jne 0x43ff42
or dword [edi + 0x18], 2
jmp 0x43fe90
mov ecx, str.SMSGG_MODE
mov eax, esi
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x43ff70
test dl, dl
je 0x43ff6c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x43ff70
add eax, 2
add ecx, 2
test dl, dl
jne 0x43ff50
xor eax, eax
jmp 0x43ff75
sbb eax, eax
or eax, 1
test eax, eax
jne 0x43ff82
or dword [edi + 0x18], 0x40
jmp 0x43fe90
mov ecx, str.HACK
mov eax, esi
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x43ffb0
test dl, dl
je 0x43ffac
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x43ffb0
add eax, 2
add ecx, 2
test dl, dl
jne 0x43ff90
xor eax, eax
jmp 0x43ffb5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x43ffc2
or dword [edi + 0x18], 4
jmp 0x43fe90
mov ecx, str.TRANS
mov eax, esi
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x43fff0
test dl, dl
je 0x43ffec
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x43fff0
add eax, 2
add ecx, 2
test dl, dl
jne 0x43ffd0
xor eax, eax
jmp 0x43fff5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x440002
or dword [edi + 0x18], 8
jmp 0x43fe90
mov ecx, str.PROTO
mov eax, esi
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x440030
test dl, dl
je 0x44002c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x440030
add eax, 2
add ecx, 2
test dl, dl
jne 0x440010
xor eax, eax
jmp 0x440035
sbb eax, eax
or eax, 1
test eax, eax
jne 0x440042
or dword [edi + 0x18], 0x10
jmp 0x43fe90
mov eax, str.HOMEBREW
mov cl, byte [esi]
cmp cl, byte [eax]
jne 0x440067
test cl, cl
je 0x440063
mov cl, byte [esi + 1]
cmp cl, byte [eax + 1]
jne 0x440067
add esi, 2
add eax, 2
test cl, cl
jne 0x440047
xor eax, eax
jmp 0x44006c
sbb eax, eax
or eax, 1
test eax, eax
jne 0x43fc8d
or dword [edi + 0x18], 0x20
jmp 0x43fe90
mov ecx, str.TRANS
mov eax, esi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4400a4
test dl, dl
je 0x4400a0
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4400a4
add eax, 2
add ecx, 2
test dl, dl
jne 0x440084
xor eax, eax
jmp 0x4400a9
sbb eax, eax
or eax, 1
test eax, eax
jne 0x44012e
push eax
push 0x3b
lea eax, [esp + 0x14]
mov edx, 0x400
push 0x69a9e8
push eax
lea ecx, [esp + 0x30]
call fcn.00455a20
mov esi, eax
add esp, 0x10
test esi, esi
je 0x43fc8d
mov edx, 0x69ab0c
mov ecx, esi
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x440100
test al, al
je 0x4400fc
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x440100
add ecx, 2
add edx, 2
test al, al
jne 0x4400e0
xor eax, eax
jmp 0x440105
sbb eax, eax
or eax, 1
test eax, eax
jne 0x440116
mov eax, 0x8000
mov dword [edi + 0x2c], eax
jmp 0x4401f1
mov ecx, esi
call fcn.0043f460
cmp eax, 0xffffffff
je 0x43fc8d
mov dword [edi + 0x2c], eax
jmp 0x4401f1
mov ecx, str.AUTHORS
mov eax, esi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x440155
test dl, dl
je 0x440151
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x440155
add eax, 2
add ecx, 2
test dl, dl
jne 0x440135
xor eax, eax
jmp 0x44015a
sbb eax, eax
or eax, 1
test eax, eax
jne 0x440184
push eax
push 0x3b
lea eax, [esp + 0x14]
xor edx, edx
push 0x69a9e8
push eax
xor ecx, ecx
call fcn.00455a20
add esp, 0x10
test eax, eax
je 0x43fc8d
mov dword [edi + 0x28], eax
jmp 0x4401f1
mov ecx, str.VERSION
mov eax, esi
nop dword [eax + eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4401b0
test dl, dl
je 0x4401ac
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4401b0
add eax, 2
add ecx, 2
test dl, dl
jne 0x440190
xor eax, eax
jmp 0x4401b5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4401df
push eax
push 0x3b
lea eax, [esp + 0x14]
xor edx, edx
push 0x69a9e8
push eax
xor ecx, ecx
call fcn.00455a20
add esp, 0x10
test eax, eax
je 0x43fc8d
mov dword [edi + 0x20], eax
jmp 0x4401f1
lea ecx, [esi + 1]
mov al, byte [esi]
inc esi
test al, al
jne 0x4401e2
sub esi, ecx
jne 0x43fc8d
push 0
push 0x3b
lea eax, [esp + 0x14]
mov edx, 0x400
push 0x69a9ec
push eax
lea ecx, [esp + 0x30]
call fcn.00455a20
mov esi, eax
add esp, 0x10
test esi, esi
jne 0x43f770
mov ecx, dword [esp + 0x42c]
mov eax, 1
pop edi
pop esi
xor ecx, esp
call fcn.005e8cbe
add esp, 0x42c
ret