Function at 0x430b10
Capabilities:
Check for software breakpoints
Get geographical location

Disassembly:
sub esp, 0x18
push ebx
push ebp
push esi
mov esi, ecx
push edi
mov al, byte [esi + 0x4ea53]
test al, al
jl 0x431699
mov ax, word [esi + 0x804]
mov bx, word [esi + 0x806]
mov cx, word [esi + 0x80a]
cmp ax, 0x14
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], ebx
mov word [esp + 0x24], cx
jge 0x430b55
xor eax, eax
mov dword [esp + 0x10], eax
cmp bx, 0x14
jge 0x430b61
xor ebx, ebx
mov dword [esp + 0x14], ebx
cmp ax, 0x1ec
jle 0x430b70
mov eax, 0x200
mov dword [esp + 0x10], eax
cmp bx, 0x117
jle 0x430b80
mov ebx, 0x12b
mov dword [esp + 0x14], ebx
lea ebp, [esi + 0x6004]
lea edi, [eax - 2]
mov dword [esp + 0x20], 0x84
push 0x32
push 0x32
lea eax, [ebx - 2]
push 0x32
push eax
push edi
mov ecx, ebp
call fcn.004021a0
push 0x32
push 0x32
lea eax, [ebx - 1]
push 0x32
push eax
push edi
mov ecx, ebp
call fcn.004021a0
push 0x32
push 0x32
lea eax, [ebx + 0x80]
push 0x32
push eax
push edi
mov ecx, ebp
call fcn.004021a0
push 0x32
push 0x32
lea eax, [ebx + 0x81]
push 0x32
push eax
push edi
mov ecx, ebp
call fcn.004021a0
mov eax, dword [esp + 0x20]
inc edi
dec eax
mov dword [esp + 0x20], eax
jne 0x430b91
lea edi, [ebx - 2]
mov dword [esp + 0x20], 0x84
mov edx, dword [esp + 0x10]
push 0x32
push 0x32
push 0x32
lea eax, [edx - 2]
push edi
push eax
mov ecx, ebp
call fcn.004021a0
mov eax, dword [esp + 0x10]
push 0x32
push 0x32
push 0x32
dec eax
push edi
push eax
mov ecx, ebp
call fcn.004021a0
mov ecx, dword [esp + 0x10]
push 0x32
push 0x32
push 0x32
lea eax, [ecx + 0x80]
push edi
push eax
mov ecx, ebp
call fcn.004021a0
mov edx, dword [esp + 0x10]
push 0x32
push 0x32
push 0x32
lea eax, [edx + 0x81]
push edi
push eax
mov ecx, ebp
call fcn.004021a0
mov eax, dword [esp + 0x20]
inc edi
dec eax
mov dword [esp + 0x20], eax
jne 0x430bf6
mov eax, dword [esi + 0x4dd9c]
test eax, eax
je 0x430e1d
mov ax, word [esi + 0x4e662]
mov cx, word [esi + 0x4e664]
sub ax, 0x40
sub cx, 0x40
test ax, ax
mov dword [esp + 0x18], eax
mov dword [esp + 0x1c], ecx
jge 0x430c95
xor eax, eax
mov dword [esp + 0x18], eax
test cx, cx
jge 0x430ca0
xor ecx, ecx
mov dword [esp + 0x1c], ecx
mov edx, dword [esi + 0x4a258]
movsx eax, ax
mov di, word [edx + 0x934458]
movsx ebx, di
sub ebx, 0x80
cmp eax, ebx
jle 0x430cc4
add edi, 0xffffff80
mov dword [esp + 0x18], edi
mov dx, word [edx + 0x93445a]
movsx eax, dx
movsx ecx, cx
sub eax, 0x80
cmp ecx, eax
jle 0x430ce1
add edx, 0xffffff80
mov dword [esp + 0x1c], edx
mov eax, dword [esi + 0x4e478]
movsx ebx, word [esp + 0x1c]
movsx ebp, word [esp + 0x14]
movsx edi, word [esp + 0x10]
test eax, eax
movsx eax, word [esp + 0x18]
mov dword [esp + 0x20], eax
je 0x430d25
mov edx, dword [esi + 0x4dd44]
push edx
push 0
push ebx
push eax
movsx eax, byte [esi + 0x4ea53]
push ebp
push edi
mov ecx, dword [esi + eax*4 + 0x361a0]
call fcn.0048c520
jmp 0x430d45
mov ecx, dword [esi + 0x4dd44]
movsx edx, byte [esi + 0x4ea53]
push ecx
push 0
mov ecx, dword [esi + edx*4 + 0x361a0]
push ebx
push eax
push ebp
push edi
call fcn.0048dc80
mov eax, dword [esi + 0x4dd44]
movsx ecx, word [esi + 0x4e664]
movsx edx, word [esi + 0x4e662]
push eax
mov eax, dword [esp + 0x24]
sub ecx, ebx
sub edx, eax
add ecx, ebp
push 0x25
add edx, edi
push ecx
mov ecx, dword [esi + 0x36198]
push edx
call fcn.00488ff0
mov eax, dword [esi + 0x4dd44]
mov edx, dword [esi + 0x4dd84]
mov ecx, eax
sub ecx, edx
cmp ecx, 0x7530
jae 0x430f28
xor edx, edx
mov ecx, 0x1f4
div ecx
cmp edx, 0x172
jae 0x430f37
mov ax, word [esi + 0x4dd8a]
cmp ax, word [esp + 0x18]
jl 0x430f37
mov edx, dword [esp + 0x20]
movsx ecx, ax
add edx, 0x80
cmp ecx, edx
jg 0x430f37
mov ax, word [esi + 0x4dd8c]
cmp ax, word [esp + 0x1c]
jl 0x430f37
movsx eax, ax
lea edx, [ebx + 0x80]
cmp eax, edx
jg 0x430f37
mov edx, dword [esi + 0x4dd44]
sub eax, ebx
mov ebx, dword [esp + 0x20]
push edx
movsx edx, word [esi + 0x4dd88]
sub ecx, ebx
add eax, ebp
push edx
add ecx, edi
push eax
push ecx
mov ecx, dword [esi + 0x36140]
call fcn.00488ff0
jmp 0x430f37
mov eax, dword [esi + 0x4e478]
movsx edi, word [esp + 0x10]
test eax, eax
movsx ebp, bx
je 0x430e4d
movsx ecx, byte [esi + 0x4ea53]
mov eax, dword [esi + 0x4dd44]
push eax
push ecx
mov ecx, dword [esi + 0x3619c]
push ebp
push edi
call fcn.0048c140
jmp 0x430e69
movsx eax, byte [esi + 0x4ea53]
mov edx, dword [esi + 0x4dd44]
mov ecx, dword [esi + 0x3619c]
push edx
push eax
push ebp
push edi
call fcn.00489220
movsx eax, word [esi + 0x4e664]
mov ecx, dword [esi + 0x4a258]
mov edx, dword [esi + 0x4dd44]
shl eax, 7
movsx ecx, word [ecx + 0x934458]
push edx
push 0x25
cdq
idiv ecx
movsx eax, ax
add eax, ebp
push eax
movsx eax, word [esi + 0x4e662]
shl eax, 7
cdq
idiv ecx
movsx ecx, ax
add ecx, edi
push ecx
mov ecx, dword [esi + 0x36198]
call fcn.00488ff0
mov edx, dword [esi + 0x4dd34]
mov ecx, dword [esi + 0x4dd84]
sub edx, ecx
cmp edx, 0x7530
jae 0x430f28
mov ebx, dword [esi + 0x4dd44]
xor edx, edx
mov eax, ebx
mov ecx, 0x1f4
div ecx
cmp edx, 0x172
jae 0x430f37
movsx eax, word [esi + 0x4dd88]
mov edx, dword [esi + 0x4a258]
push ebx
push eax
movsx eax, word [esi + 0x4dd8c]
movsx ecx, word [edx + 0x934458]
shl eax, 7
cdq
idiv ecx
movsx edx, ax
movsx eax, word [esi + 0x4dd8a]
add edx, ebp
shl eax, 7
push edx
cdq
idiv ecx
mov ecx, dword [esi + 0x36140]
movsx eax, ax
add eax, edi
push eax
call fcn.00488ff0
jmp 0x430f37
xor eax, eax
mov dword [esi + 0x4dd84], eax
mov word [esi + 0x4dd88], ax
mov al, byte [esp + 0x34]
test al, al
jne 0x431699
mov ecx, dword [esp + 0x2c]
cmp cx, word [esp + 0x10]
jl 0x431699
mov ebx, dword [esp + 0x24]
movsx eax, bx
movsx ecx, cx
lea edx, [eax + edi]
mov dword [esp + 0x1c], ecx
cmp ecx, edx
jge 0x431699
mov ecx, dword [esp + 0x30]
mov edx, dword [esp + 0x14]
cmp cx, dx
jl 0x431699
movsx ecx, cx
add eax, ebp
mov dword [esp + 0x20], ecx
cmp ecx, eax
jge 0x431699
cmp dx, 0xd5
jle 0x430f99
lea ebx, [edx - 0x11]
jmp 0x430f9d
lea ebx, [ebx + edx + 4]
mov eax, dword [esi + 0x4dd9c]
lea ecx, [esi + 0x6004]
test eax, eax
mov dword [esp + 0x34], ecx
je 0x430fc6
call fcn.00402250
movsx eax, bx
push 0x78c8c8
push 0x4a7194
push eax
jmp 0x430fd9
call fcn.00402250
movsx ecx, bx
push 0x78c8c8
push 0x4a7180
push ecx
mov ebx, dword [esp + 0x40]
push edi
mov ecx, ebx
call fcn.00401ef0
mov ecx, ebx
call fcn.00402290
mov eax, dword [esi + 0x4dd9c]
test eax, eax
je 0x43106e
mov di, word [esi + 0x4e662]
mov bp, word [esi + 0x4e664]
sub di, 0x40
sub bp, 0x40
test di, di
jge 0x431013
xor edi, edi
test bp, bp
jge 0x43101a
xor ebp, ebp
mov eax, dword [esi + 0x4a258]
movsx ebx, di
mov cx, word [eax + 0x934458]
movsx edx, cx
sub edx, 0x80
cmp ebx, edx
jle 0x43103a
lea edi, [ecx - 0x80]
mov ax, word [eax + 0x93445a]
movsx ecx, ax
movsx edx, bp
sub ecx, 0x80
cmp edx, ecx
jle 0x431054
lea ebp, [eax - 0x80]
mov eax, dword [esp + 0x2c]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x14]
sub eax, ecx
add edi, eax
mov eax, dword [esp + 0x30]
sub eax, edx
add ebp, eax
jmp 0x4310a3
mov eax, dword [esi + 0x4a258]
movsx ecx, word [eax + 0x934458]
mov eax, dword [esp + 0x1c]
sub eax, edi
imul eax, ecx
cdq
and edx, 0x7f
add eax, edx
mov edi, eax
mov eax, dword [esp + 0x20]
sub eax, ebp
imul eax, ecx
cdq
and edx, 0x7f
add eax, edx
mov ebp, eax
sar edi, 7
sar ebp, 7
movsx ecx, bp
movsx edx, di
push ecx
lea ebx, [esi + 0x4e763]
push edx
push 0x4a7178
push ebx
call dword [sym.imp.user32.dll_wsprintfA]
mov al, byte [esi + 0x4ea53]
add esp, 0x10
cmp al, 0xb
jne 0x431305
cmp di, 0xa5
jle 0x43110c
cmp di, 0xe1
jge 0x43110c
cmp bp, 0x88
jle 0x43110c
cmp bp, 0xaf
jge 0x43110c
mov edi, 0x4a716c
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, ebx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
jmp 0x431665
cmp di, 0x2f
jle 0x431130
cmp di, 0x4c
jge 0x431130
cmp bp, 0x86
jle 0x431130
cmp bp, 0xa5
jge 0x431130
mov edi, 0x4a7160
jmp 0x43164d
cmp di, 0x63
jle 0x43116c
cmp di, 0x7c
jge 0x43116c
cmp bp, 0xcc
jle 0x43116c
cmp bp, 0xe3
jge 0x43116c
mov edi, 0x4a7158
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, ebx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
jmp 0x431665
cmp di, 0x7d
jle 0x431191
cmp di, 0x9d
jge 0x431191
cmp bp, 0xb9
jle 0x431191
cmp bp, 0xda
jge 0x431191
mov edi, 0x4a714c
jmp 0x43164d
cmp di, 0x93
jle 0x4311cd
cmp di, 0xb8
jge 0x4311cd
cmp bp, 0x41
jle 0x4311cd
cmp bp, 0x61
jge 0x4311cd
mov edi, 0x4a7144
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, ebx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
jmp 0x431665
cmp di, 0x9b
jle 0x4311f2
cmp di, 0xb9
jge 0x4311f2
cmp bp, 0x6e
jle 0x4311f2
cmp bp, 0x88
jge 0x4311f2
mov edi, 0x4a7138
jmp 0x43164d
cmp di, 0xa6
jle 0x431230
cmp di, 0xc1
jge 0x431230
cmp bp, 0xb9
jle 0x431230
cmp bp, 0xd3
jge 0x431230
mov edi, 0x4a7130
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, ebx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
jmp 0x431665
cmp di, 0xaf
jle 0x431254
cmp di, 0xca
jge 0x431254
cmp bp, 0x61
jle 0x431254
cmp bp, 0x78
jge 0x431254
mov edi, 0x4a7158
jmp 0x43164d
cmp di, 0xc9
jle 0x431292
cmp di, 0xe5
jge 0x431292
cmp bp, 0xdc
jle 0x431292
cmp bp, 0xf5
jge 0x431292
mov edi, 0x4a7124
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, ebx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
jmp 0x431665
cmp di, 0xcd
jle 0x4312b7
cmp di, 0xf9
jge 0x4312b7
cmp bp, 0x62
jle 0x4312b7
cmp bp, 0x8c
jge 0x4312b7
mov edi, 0x4a711c
jmp 0x43164d
cmp di, 0x106
jle 0x43166a
cmp di, 0x122
jge 0x43166a
cmp bp, 0x94
jle 0x43166a
cmp bp, 0xb2
jge 0x43166a
mov edi, 0x4a714c
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, ebx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
jmp 0x431665
cmp al, 3
jne 0x431524
cmp di, 0x4d
jle 0x43132f
cmp di, 0x72
jge 0x43132f
cmp bp, 0x51
jle 0x43132f
cmp bp, 0x72
jge 0x43132f
mov edi, 0x4a7160
jmp 0x43164d
cmp di, 0x58
jle 0x43136b
cmp di, 0x78
jge 0x43136b
cmp bp, 0x97
jle 0x43136b
cmp bp, 0xb7
jge 0x43136b
mov edi, 0x4a7138
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, ebx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
jmp 0x431665
cmp di, 0x7e
jle 0x43138f
cmp di, 0xab
jge 0x43138f
cmp bp, 0x61
jle 0x43138f
cmp bp, 0x8d
jge 0x43138f
mov edi, 0x4a711c
jmp 0x43164d
cmp di, 0x9d
jle 0x4313cd
cmp di, 0xc2
jge 0x4313cd
cmp bp, 0x96
jle 0x4313cd
cmp bp, 0xbe
jge 0x4313cd
mov edi, 0x4a716c
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, ebx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
jmp 0x431665
cmp di, 0xab
jle 0x4313f1
cmp di, 0xcf
jge 0x4313f6
cmp bp, 0x4c
jle 0x4313f1
cmp bp, 0x6b
jge 0x4313f1
mov edi, 0x4a7144
jmp 0x43164d
cmp di, 0xcf
jle 0x43142d
cmp di, 0xe7
jge 0x43142d
cmp bp, 0x63
jle 0x43142d
cmp bp, 0x7c
jge 0x43142d
mov edi, 0x4a7158
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, ebx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
jmp 0x431665
cmp di, 0xf7
jle 0x431453
cmp di, 0x115
jge 0x431453
cmp bp, 0x8b
jle 0x431453
cmp bp, 0xaa
jge 0x431453
mov edi, 0x4a714c
jmp 0x43164d
cmp di, 0xed
jle 0x431491
cmp di, 0x10e
jge 0x431491
cmp bp, 0xe1
jle 0x431491
cmp bp, 0x102
jge 0x431491
mov edi, 0x4a714c
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, ebx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
jmp 0x431665
cmp di, 0x102
jle 0x4314b0
cmp di, 0x11f
jge 0x4314b0
cmp bp, 0x6d
jle 0x4314b0
cmp bp, 0x89
jl 0x431648
cmp di, 0x12e
jle 0x4314ee
cmp di, 0x14d
jge 0x4314ee
cmp bp, 0x93
jle 0x4314ee
cmp bp, 0xaf
jge 0x4314ee
mov edi, 0x4a7124
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, ebx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
jmp 0x431665
cmp di, 0x12d
jle 0x43166a
cmp di, 0x14a
jge 0x43166a
cmp bp, 0xef
jle 0x43166a
cmp bp, 0x109
jge 0x43166a
mov edi, 0x4a7158
jmp 0x43164d
cmp al, 5
jne 0x4315d2
cmp di, 0x3e
jle 0x431568
cmp di, 0x4e
jge 0x431568
cmp bp, 0xb2
jle 0x431568
cmp bp, 0xc0
jge 0x431568
mov edi, 0x4a714c
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, ebx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
jmp 0x431665
cmp di, 0x52
jle 0x431586
cmp di, 0x5f
jge 0x431586
cmp bp, 0xa3
jle 0x431586
cmp bp, 0xae
jl 0x431648
cmp di, 0x6b
jle 0x43166a
cmp di, 0x7a
jge 0x43166a
cmp bp, 0xb1
jle 0x43166a
cmp bp, 0xbd
jge 0x43166a
mov edi, 0x4a7124
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, ebx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
jmp 0x431665
cmp al, 6
jne 0x43166a
cmp di, 0x23
jle 0x4315f9
cmp di, 0x30
jge 0x4315f9
cmp bp, 0x46
jle 0x4315f9
cmp bp, 0x55
jge 0x4315f9
mov edi, 0x4a714c
jmp 0x43164d
cmp di, 0x37
jle 0x431630
cmp di, 0x49
jge 0x431630
cmp bp, 0x4d
jle 0x431630
cmp bp, 0x5a
jge 0x431630
mov edi, 0x4a7124
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, ebx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
jmp 0x431665
cmp di, 0x35
jle 0x43166a
cmp di, 0x42
jge 0x43166a
cmp bp, 0x35
jle 0x43166a
cmp bp, 0x41
jge 0x43166a
mov edi, 0x4a7130
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov edx, ecx
mov esi, edi
mov edi, ebx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov esi, dword [esp + 0x34]
mov ecx, esi
call fcn.00402250
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x1c]
push 0x78c8c8
add eax, 0xfffffff3
push ebx
add ecx, 0xfffffff6
push eax
push ecx
mov ecx, esi
call fcn.00401ef0
mov ecx, esi
call fcn.00402290
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x18
ret 0xc