Function at 0x490e40
Capabilities:
Identify system language via api
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x51ece5
mov eax, dword fs:[0]
push eax
sub esp, 0x98
mov eax, dword [0x5750c8]
xor eax, esp
mov dword [esp + 0x90], eax
push ebx
push esi
push edi
mov eax, dword [0x5750c8]
xor eax, esp
push eax
lea eax, [esp + 0xa8]
mov dword fs:[0], eax
mov eax, dword [ebp + 8]
mov edx, dword [0x5b4be8]
mov dword [esp + 0x24], eax
mov eax, dword [edx + 4]
mov ecx, 0x5b4be8
mov byte [0x5b2b6f], 1
call eax
push 0x5bd2f8
call fcn.00501640
test al, al
jne 0x490ec1
mov edx, dword [0x5b4be8]
mov eax, dword [edx + 0x10]
mov ecx, 0x5b4be8
call eax
jmp 0x4920f3
mov edx, 0x576b80
call fcn.0041b610
mov edi, dword [sym.imp.MSVCR100.dll_void____cdecl_operator_new_unsigned_int_]
push 0x1c
call edi
xor ebx, ebx
add esp, 4
cmp eax, ebx
je 0x490efa
mov dword [eax + 4], ebx
mov dword [eax + 8], ebx
mov dword [eax], vtable.Mortar::FileSystem_Zip.0
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov dword [eax + 0x14], ebx
mov dword [eax + 0x18], ebx
mov esi, eax
jmp 0x490efc
xor esi, esi
mov eax, esi
call fcn.0042fdc0
test byte [0x5bd5d8], 1
jne 0x490f37
or dword [0x5bd5d8], 1
mov dword [esp + 0xb0], ebx
call fcn.0042f9f0
push 0x52b6f0
call fcn.0045f177
add esp, 4
mov dword [esp + 0xb0], 0xffffffff
mov ecx, 0x54bd38
call fcn.00419140
push esi
xor ecx, ecx
mov edx, eax
mov ebx, 0x5bd2a8
call fcn.0042fb20
push 0x14
call edi
xor ecx, ecx
add esp, 4
cmp eax, ecx
je 0x490f73
mov dword [eax + 4], ecx
mov dword [eax + 8], ecx
mov dword [eax], vtable.Mortar::FileSystem_Direct.0
mov dword [eax + 0xc], ecx
mov byte [eax + 0x10], cl
mov esi, eax
jmp 0x490f75
xor esi, esi
mov edx, dword [esi]
mov eax, dword [edx + 0x18]
push ecx
push 0x546a63
mov ecx, esi
call eax
mov eax, 1
test byte [0x5bd5d8], al
jne 0x490fbb
or dword [0x5bd5d8], eax
mov dword [esp + 0xb0], eax
call fcn.0042f9f0
push 0x52b6f0
call fcn.0045f177
add esp, 4
mov dword [esp + 0xb0], 0xffffffff
push esi
xor ecx, ecx
xor edx, edx
mov ebx, 0x5bd2a8
call fcn.0042fb20
test byte [0x5bd5dc], 1
jne 0x490fec
or dword [0x5bd5dc], 1
call fcn.00432c90
push 0x52b5b0
call fcn.0045f177
add esp, 4
mov edx, dword [0x5bd4d0]
mov eax, dword [edx + 0x5c]
mov ecx, 0x5bd4d0
call eax
push 0x10
mov byte [esp + 0x1f], al
call edi
add esp, 4
mov dword [esp + 0x2c], eax
mov dword [esp + 0xb0], 2
test eax, eax
je 0x491023
mov esi, eax
call fcn.004956b0
jmp 0x491025
xor eax, eax
mov dword [esp + 0xb0], 0xffffffff
mov edi, eax
mov dword [0x5b30c4], eax
call fcn.00496420
mov eax, dword [0x5b30c4]
mov ecx, dword [eax + 0xc]
cmp ecx, 0xffffffff
jne 0x491253
call dword [sym.imp.KERNEL32.dll_GetUserDefaultUILanguage]
movzx eax, ax
mov ecx, 0x40c
cmp ax, cx
je 0x491235
mov edx, 0x80c
cmp ax, dx
je 0x491235
mov ecx, 0xc0c
cmp ax, cx
je 0x491235
mov edx, 0x100c
cmp ax, dx
je 0x491235
mov ecx, 0x140c
cmp ax, cx
je 0x491235
mov edx, 0x180c
cmp ax, dx
je 0x491235
mov eax, dword [0x5b30c4]
mov dword [eax + 0xc], 0
mov eax, dword [0x5b30c4]
mov byte [0x5b3073], 0
movzx ecx, word [eax + 2]
movzx edx, word [eax]
mov bl, byte [eax + 9]
mov dword [esp + 0x20], ecx
mov ecx, dword [esp + 0x24]
mov dword [esp + 0x1c], edx
mov dl, byte [eax + 8]
mov byte [esp + 0x14], dl
test ecx, ecx
je 0x491205
mov eax, ecx
mov dword [esp + 0x7c], 0xf
mov dword [esp + 0x78], 0
mov byte [esp + 0x68], 0
lea esi, [eax + 1]
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x491101
sub eax, esi
push eax
push ecx
lea ecx, [esp + 0x70]
call fcn.00407680
push 3
push 0x54bd3c
lea eax, [esp + 0x70]
push eax
mov dword [esp + 0xbc], 3
call fcn.00415580
cmp eax, 0xffffffff
je 0x49113b
mov byte [esp + 0x14], 0
push 4
push str._FS_
lea ecx, [esp + 0x70]
push ecx
call fcn.00415580
cmp eax, 0xffffffff
je 0x491156
mov byte [esp + 0x14], 1
push 3
push 0x54bd48
lea edx, [esp + 0x70]
push edx
call fcn.00415580
mov edi, dword [sym.imp.MSVCR100.dll_void___cdecl_operator_delete_void__]
cmp eax, 0xffffffff
je 0x4911e9
push 0xffffffffffffffff
lea ecx, [eax + 3]
lea esi, [esp + 0x88]
lea edx, [esp + 0x6c]
call fcn.00406e10
xor eax, eax
cmp dword [esp + 0x98], 0x10
mov dword [esp + 0x30], eax
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x84]
jae 0x4911a4
mov eax, esi
lea ecx, [esp + 0x24]
push ecx
lea edx, [esp + 0x34]
push edx
push str._d__d
push eax
call dword [sym.imp.MSVCR100.dll_sscanf]
add esp, 0x10
cmp eax, 2
jne 0x4911d2
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0x24]
mov dword [esp + 0x1c], eax
mov dword [esp + 0x20], ecx
cmp dword [esp + 0x98], 0x10
jb 0x4911e9
mov edx, dword [esp + 0x84]
push edx
call edi
add esp, 4
mov dword [esp + 0xb0], 0xffffffff
cmp dword [esp + 0x7c], 0x10
jb 0x491205
mov eax, dword [esp + 0x68]
push eax
call edi
add esp, 4
mov esi, 1
test bl, bl
je 0x49126f
test byte [0x5bd5dc], 1
jne 0x49122f
or dword [0x5bd5dc], esi
call fcn.00432c90
push 0x52b5b0
call fcn.0045f177
add esp, 4
push 0xa
push 0x10
jmp 0x491294
mov ecx, dword [0x5b30c4]
mov dword [ecx + 0xc], 1
mov eax, dword [0x5b30c4]
mov byte [0x5b3073], 2
jmp 0x4910c2
sub ecx, 0
je 0x4910bb
dec ecx
jne 0x4910c2
mov byte [0x5b3073], 2
jmp 0x4910c2
test byte [0x5bd5dc], 1
jne 0x491290
or dword [0x5bd5dc], esi
call fcn.00432c90
push 0x52b5b0
call fcn.0045f177
add esp, 4
push 3
push 4
mov edx, dword [0x5bd4d0]
mov eax, dword [edx + 0x88]
mov ecx, 0x5bd4d0
call eax
test byte [0x5bd5dc], 1
jne 0x4912c8
or dword [0x5bd5dc], esi
call fcn.00432c90
push 0x52b5b0
call fcn.0045f177
add esp, 4
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x20]
mov eax, dword [0x5bd4d0]
push ecx
push 0
push edx
mov edx, dword [eax + 0x34]
push 0
mov ecx, 0x5bd4d0
call edx
test byte [0x5bd5dc], 1
jne 0x491306
or dword [0x5bd5dc], esi
call fcn.00432c90
push 0x52b5b0
call fcn.0045f177
add esp, 4
mov eax, dword [0x5bd4d0]
mov edx, dword [eax + 0x50]
push esi
mov ecx, 0x5bd4d0
call edx
call fcn.004f7e90
test byte [0x5bd5dc], 1
jne 0x49133c
or dword [0x5bd5dc], esi
call fcn.00432c90
push 0x52b5b0
call fcn.0045f177
add esp, 4
mov eax, dword [esp + 0x14]
mov edx, dword [0x5bd4d0]
push 0x65
push eax
mov eax, dword [edx + 0x94]
push 0x54bd54
push 0
mov ecx, 0x5bd4d0
call eax
test byte [0x5bd5dc], 1
mov eax, dword [0x576b48]
mov cl, byte [0x576b4a]
mov dl, byte [0x576b4b]
mov byte [esp + 0x14], al
mov byte [esp + 0x15], ah
mov byte [esp + 0x16], cl
mov byte [esp + 0x17], dl
jne 0x49139f
or dword [0x5bd5dc], esi
call fcn.00432c90
push 0x52b5b0
call fcn.0045f177
add esp, 4
lea esi, [esp + 0x14]
lea eax, [esp + 0x28]
mov ecx, 0x5bd4d4
call fcn.00403890
fldz
fstp dword [esp + 0x4c]
mov ebx, 1
fld dword [0x554bb4]
fstp dword [esp + 0x50]
fld dword [0x554cac]
fstp dword [esp + 0x54]
test byte [0x5bd5dc], bl
jne 0x4913f0
or dword [0x5bd5dc], ebx
call fcn.00432c90
push 0x52b5b0
call fcn.0045f177
add esp, 4
mov al, byte [0x5bd4fc]
test al, al
mov eax, 0x5bd4ec
jne 0x491402
lea eax, [esp + 0x4c]
cmp byte [esp + 0x1b], 0
mov ecx, dword [eax]
mov dword [0x5bd4ec], ecx
mov edx, dword [eax + 4]
mov cl, byte [0x5bd4fc]
mov dword [0x5bd4f0], edx
mov eax, dword [eax + 8]
mov dword [0x5bd4f4], eax
je 0x491462
test byte [0x5bd5dc], 1
jne 0x491449
or dword [0x5bd5dc], ebx
call fcn.00432c90
push 0x52b5b0
call fcn.0045f177
add esp, 4
xor eax, eax
jmp 0x491450
mov cl, byte [eax + 0x54bd60]
mov byte [eax + 0x5bd504], cl
add eax, ebx
test cl, cl
jne 0x491450
test byte [0x5fcd40], 1
jne 0x49149a
or dword [0x5fcd40], ebx
mov dword [esp + 0xb0], 4
call fcn.00427af0
push 0x52b680
call fcn.0045f177
add esp, 4
or esi, 0xffffffff
mov dword [esp + 0xb0], esi
jmp 0x49149d
or esi, 0xffffffff
test byte [0x5fcd40], 1
jne 0x4914d0
or dword [0x5fcd40], ebx
mov dword [esp + 0xb0], 5
call fcn.00427af0
push 0x52b680
call fcn.0045f177
add esp, 4
mov dword [esp + 0xb0], esi
call fcn.0040dd90
test byte [0x57c8b4], 1
jne 0x491508
or dword [0x57c8b4], ebx
mov dword [esp + 0xb0], 6
call fcn.004199c0
push 0x528cd0
call fcn.0045f177
add esp, 4
mov dword [esp + 0xb0], esi
mov edi, 0x57c8a0
call fcn.00419a70
call fcn.004fa0d0
mov ecx, eax
call fcn.004fa340
test byte [0x5fce1c], 1
jne 0x491551
or dword [0x5fce1c], ebx
mov dword [esp + 0xb0], 7
call fcn.004eaaa0
push 0x529360
call fcn.0045f177
add esp, 4
mov dword [esp + 0xb0], esi
mov ecx, 0x5fcd70
call fcn.004ed390
test byte [0x5bd5d4], 1
jne 0x49157c
or dword [0x5bd5d4], ebx
call fcn.00500e30
push 0x529250
call fcn.0045f177
add esp, 4
call fcn.00490a20
test byte [0x5c0b60], 1
jne 0x4915b4
or dword [0x5c0b60], ebx
mov dword [esp + 0xb0], 8
call fcn.004fe0f0
push 0x529270
call fcn.0045f177
add esp, 4
mov dword [esp + 0xb0], esi
push 0x5bd5e0
call fcn.004fff90
test byte [0x5fcd4c], 1
jne 0x4915f1
or dword [0x5fcd4c], ebx
mov dword [esp + 0xb0], 9
call fcn.004166f0
push 0x52b590
call fcn.0045f177
add esp, 4
mov dword [esp + 0xb0], esi
mov eax, dword [0x5b3674]
add eax, 0x8048
je 0x491613
mov eax, dword [eax + 0x24]
lea edx, [eax + eax*2]
mov eax, dword [0x5b367c]
lea eax, [eax + edx*4]
test eax, eax
je 0x491613
mov eax, dword [eax]
jmp 0x491618
mov eax, 0x54fa50
push 0
mov ecx, eax
mov esi, 0x5fc380
call fcn.00416ee0
mov eax, dword [0x5b3674]
add eax, 0x1450
je 0x491649
mov eax, dword [eax + 0x24]
mov edx, dword [0x5b367c]
lea ecx, [eax + eax*2]
lea eax, [edx + ecx*4]
test eax, eax
je 0x491649
mov eax, dword [eax]
jmp 0x49164e
mov eax, 0x54fa50
push ebx
mov ecx, eax
mov esi, 0x5fc380
call fcn.00416ee0
mov eax, dword [0x5b3674]
add eax, 0x1478
je 0x49167e
mov eax, dword [eax + 0x24]
mov ecx, dword [0x5b367c]
lea eax, [eax + eax*2]
lea eax, [ecx + eax*4]
test eax, eax
je 0x49167e
mov eax, dword [eax]
jmp 0x491683
mov eax, 0x54fa50
push 2
mov ecx, eax
mov esi, 0x5fc380
call fcn.00416ee0
mov eax, dword [0x5b3674]
add eax, 0x14a0
je 0x4916b3
mov eax, dword [eax + 0x24]
lea edx, [eax + eax*2]
mov eax, dword [0x5b367c]
lea eax, [eax + edx*4]
test eax, eax
je 0x4916b3
mov eax, dword [eax]
jmp 0x4916b8
mov eax, 0x54fa50
push 3
mov ecx, eax
mov esi, 0x5fc380
call fcn.00416ee0
mov eax, dword [0x5b3674]
add eax, 0x16f8
je 0x4916e9
mov eax, dword [eax + 0x24]
mov edx, dword [0x5b367c]
lea ecx, [eax + eax*2]
lea eax, [edx + ecx*4]
test eax, eax
je 0x4916e9
mov eax, dword [eax]
jmp 0x4916ee
mov eax, 0x54fa50
push 4
mov ecx, eax
mov esi, 0x5fc380
call fcn.00416ee0
mov eax, dword [0x5b3674]
add eax, 0x1720
je 0x49171f
mov eax, dword [eax + 0x24]
mov ecx, dword [0x5b367c]
lea eax, [eax + eax*2]
lea eax, [ecx + eax*4]
test eax, eax
je 0x49171f
mov eax, dword [eax]
jmp 0x491724
mov eax, 0x54fa50
push 5
mov ecx, eax
mov esi, 0x5fc380
call fcn.00416ee0
mov eax, dword [0x5b3674]
add eax, 0x14c8
je 0x491754
mov eax, dword [eax + 0x24]
lea edx, [eax + eax*2]
mov eax, dword [0x5b367c]
lea eax, [eax + edx*4]
test eax, eax
je 0x491754
mov eax, dword [eax]
jmp 0x491759
mov eax, 0x54fa50
push 6
mov ecx, eax
mov esi, 0x5fc380
call fcn.00416ee0
mov eax, dword [0x5b3674]
add eax, 0x14f0
je 0x49178a
mov eax, dword [eax + 0x24]
mov edx, dword [0x5b367c]
lea ecx, [eax + eax*2]
lea eax, [edx + ecx*4]
test eax, eax
je 0x49178a
mov eax, dword [eax]
jmp 0x49178f
mov eax, 0x54fa50
push 7
mov ecx, eax
mov esi, 0x5fc380
call fcn.00416ee0
mov eax, dword [0x5b3674]
add eax, 0x1518
je 0x4917c0
mov eax, dword [eax + 0x24]
mov ecx, dword [0x5b367c]
lea eax, [eax + eax*2]
lea eax, [ecx + eax*4]
test eax, eax
je 0x4917c0
mov eax, dword [eax]
jmp 0x4917c5
mov eax, 0x54fa50
push 8
mov ecx, eax
mov esi, 0x5fc380
call fcn.00416ee0
mov eax, dword [0x5b3674]
add eax, 0x1540
je 0x4917f5
mov eax, dword [eax + 0x24]
lea edx, [eax + eax*2]
mov eax, dword [0x5b367c]
lea eax, [eax + edx*4]
test eax, eax
je 0x4917f5
mov eax, dword [eax]
jmp 0x4917fa
mov eax, 0x54fa50
push 9
mov ecx, eax
mov esi, 0x5fc380
call fcn.00416ee0
mov eax, dword [0x5b3674]
add eax, 0x1568
je 0x49182b
mov eax, dword [eax + 0x24]
mov edx, dword [0x5b367c]
lea ecx, [eax + eax*2]
lea eax, [edx + ecx*4]
test eax, eax
je 0x49182b
mov eax, dword [eax]
jmp 0x491830
mov eax, 0x54fa50
push 0xa
mov ecx, eax
mov esi, 0x5fc380
call fcn.00416ee0
sub esp, 0x24
mov eax, esp
mov dword [esp + 0x4c], esp
mov dword [esp + 0x4c], eax
mov byte [eax + 0x20], 1
mov dword [eax], 0
mov ecx, 0x48ffe0
mov dword [esp + 0xd4], 0xa
test ecx, ecx
je 0x49188c
mov dword [esp + 0x68], vtable.Mortar::Delegate1_void__int_::Global.0
mov dword [esp + 0x6c], 0x48ffe0
push eax
lea ecx, [esp + 0x6c]
mov byte [esp + 0xd8], 0xb
call dword [0x551564]
or esi, 0xffffffff
push 0x5fc380
mov dword [esp + 0xd8], esi
call fcn.00416c40
mov dword [esp + 0x3c], vtable.Mortar::Delegate2_void__bool__bool_::Global.0
mov dword [esp + 0x40], fcn.004908d0
sub esp, 0x24
mov ebx, 0xc
mov dword [esp + 0xd4], ebx
mov eax, esp
mov dword [esp + 0x4c], esp
mov dword [esp + 0x4c], eax
mov byte [eax + 0x20], 1
mov dword [eax], 0
mov byte [esp + 0xd4], 0xd
mov edx, dword [esp + 0x60]
push eax
mov eax, dword [edx + 4]
lea ecx, [esp + 0x64]
call eax
push 0x5fc380
mov byte [esp + 0xd8], bl
call fcn.004156e0
mov dword [esp + 0xb0], esi
mov edx, dword [0x5fc380]
mov eax, dword [edx]
push 0
mov ecx, 0x5fc380
call eax
mov ecx, 0x54bd90
call fcn.00419140
mov esi, dword [0x5b30c0]
mov dword [esp + 0x20], eax
lea ebx, [esp + 0x20]
lea eax, [esp + 0x34]
mov ecx, esi
call fcn.00414120
mov edi, dword [esi + 4]
mov eax, dword [esp + 0x34]
cmp eax, edi
jne 0x491953
lea ecx, [esi + 0x10]
lea eax, [esp + 0x64]
call fcn.00414120
mov eax, dword [eax]
cmp eax, dword [esi + 0x14]
je 0x49195b
mov eax, dword [eax + 0x54]
cmp eax, 1
jg 0x491962
mov edi, 1
jmp 0x4919bb
mov ecx, 0x54bda4
call fcn.00419140
mov dword [esp + 0x1c], eax
lea ebx, [esp + 0x1c]
lea eax, [esp + 0x38]
mov ecx, esi
call fcn.00414120
mov eax, dword [esp + 0x38]
cmp eax, edi
jne 0x49199a
lea ecx, [esi + 0x10]
lea eax, [esp + 0x60]
call fcn.00414120
mov eax, dword [eax]
cmp eax, dword [esi + 0x14]
je 0x4919a9
mov eax, dword [eax + 0x54]
cmp eax, 2
jl 0x4919a9
mov edi, 2
jmp 0x4919bb
mov ecx, 0x54bdb8
call fcn.00419140
push eax
call fcn.00495760
mov edi, eax
test byte [0x5fcd4c], 1
jne 0x4919f3
or dword [0x5fcd4c], 1
mov dword [esp + 0xb0], 0xe
call fcn.004166f0
push 0x52b590
call fcn.0045f177
add esp, 4
mov dword [esp + 0xb0], 0xffffffff
test byte [0x5fcd4c], 1
mov dword [0x5fc4d0], edi
mov byte [0x5b3214], 1
jne 0x491a38
or dword [0x5fcd4c], 1
mov dword [esp + 0xb0], 0xf
call fcn.004166f0
push 0x52b590
call fcn.0045f177
add esp, 4
mov dword [esp + 0xb0], 0xffffffff
push 1
xor ebx, ebx
push ebx
call fcn.004908d0
mov esi, dword [sym.imp.MSVCR100.dll_void____cdecl_operator_new_unsigned_int_]
push 0x1a4
call esi
add esp, 0xc
cmp eax, ebx
je 0x491a5d
call fcn.00506e10
jmp 0x491a5f
xor eax, eax
fld dword [0x555954]
mov ecx, dword [0x57c388]
mov edx, dword [0x57c38c]
sub esp, 0x10
fstp dword [esp + 0xc]
mov dword [0x5b3108], ecx
fld dword [0x555950]
mov ecx, dword [0x57c390]
fstp dword [esp + 8]
mov dword [0x5b30bc], eax
fld dword [0x554e28]
mov dword [0x5b3110], ecx
fstp dword [esp + 4]
mov word [0x5b3114], bx
fld1
mov byte [0x5b3116], bl
mov dword [0x5b310c], edx
fstp dword [esp]
mov dword [0x5b31f8], ebx
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 4]
call eax
push 0x43c
mov dword [0x5b30c8], ebx
mov dword [0x5b30cc], ebx
mov dword [0x5b30d0], ebx
mov dword [0x5b30d4], ebx
mov dword [0x5b30d8], ebx
mov dword [0x5b30dc], ebx
mov dword [0x5b30e4], ebx
mov dword [0x5b30f8], ebx
mov dword [0x5b30e0], ebx
mov dword [0x5b30e8], ebx
mov dword [0x5b30ec], ebx
mov dword [0x5b30f0], ebx
mov dword [0x5b30f4], ebx
call esi
mov edx, eax
add esp, 4
cmp edx, ebx
je 0x491b68
mov dword [edx + 0x42c], ebx
mov dword [edx + 0x430], ebx
mov dword [edx + 0x434], ebx
lea edi, [edx + 4]
mov ecx, 0x100
xor eax, eax
mov dword [edx + 0x404], ebx
mov dword [edx], ebx
mov dword [edx + 0x40c], ebx
mov dword [edx + 0x408], ebx
mov dword [edx + 0x414], ebx
mov dword [edx + 0x410], ebx
rep stosd dword es:[edi], eax
jmp 0x491b6a
xor edx, edx
mov ecx, str.fonts_font_fruit_ninja.fnt
mov dword [0x5b30cc], edx
call fcn.0041e9c0
cmp dword [0x5b30d0], ebx
jne 0x491be4
push 0x43c
call esi
mov edx, eax
add esp, 4
cmp edx, ebx
je 0x491bd2
mov dword [edx + 0x42c], ebx
mov dword [edx + 0x430], ebx
mov dword [edx + 0x434], ebx
lea edi, [edx + 4]
mov ecx, 0x100
xor eax, eax
mov dword [edx + 0x404], ebx
mov dword [edx], ebx
mov dword [edx + 0x40c], ebx
mov dword [edx + 0x408], ebx
mov dword [edx + 0x414], ebx
mov dword [edx + 0x410], ebx
rep stosd dword es:[edi], eax
jmp 0x491bd4
xor edx, edx
mov ecx, str.fonts_fruit_ninja_numbers.fnt
mov dword [0x5b30d0], edx
call fcn.0041e9c0
cmp dword [0x5b30e4], ebx
jne 0x491c67
push 0x43c
call esi
mov edx, eax
add esp, 4
cmp edx, ebx
je 0x491c3c
mov dword [edx + 0x42c], ebx
mov dword [edx + 0x430], ebx
mov dword [edx + 0x434], ebx
lea edi, [edx + 4]
mov ecx, 0x100
xor eax, eax
mov dword [edx + 0x404], ebx
mov dword [edx], ebx
mov dword [edx + 0x40c], ebx
mov dword [edx + 0x408], ebx
mov dword [edx + 0x414], ebx
mov dword [edx + 0x410], ebx
rep stosd dword es:[edi], eax
jmp 0x491c3e
xor edx, edx
mov ecx, str.fonts_arcade_results_numbers.fnt
mov dword [0x5b30e4], edx
call fcn.0041e9c0
mov eax, dword [0x5b30e4]
mov dword [0x5b30e8], eax
mov dword [0x5b30ec], eax
mov dword [0x5b30f0], eax
mov dword [0x5b30f4], eax
test byte [0x5bd5d8], 1
jne 0x491c9f
or dword [0x5bd5d8], 1
mov dword [esp + 0xb0], 0x10
call fcn.0042f9f0
push 0x52b6f0
call fcn.0045f177
add esp, 4
mov dword [esp + 0xb0], 0xffffffff
mov eax, dword [0x5bd2a8]
mov edi, dword [eax]
mov esi, eax
cmp edi, eax
je 0x491d36
mov ecx, dword [edi + 8]
mov edx, dword [ecx]
mov eax, dword [edx + 4]
push 0x54be70
call eax
test al, al
jne 0x491ccb
mov edi, dword [edi]
cmp edi, esi
jne 0x491cb0
jmp 0x491d31
push 0x43c
call dword [sym.imp.MSVCR100.dll_void____cdecl_operator_new_unsigned_int_]
mov edx, eax
add esp, 4
cmp edx, ebx
je 0x491d1f
mov dword [edx + 0x42c], ebx
mov dword [edx + 0x430], ebx
mov dword [edx + 0x434], ebx
lea edi, [edx + 4]
mov ecx, 0x100
xor eax, eax
mov dword [edx + 0x404], ebx
mov dword [edx], ebx
mov dword [edx + 0x40c], ebx
mov dword [edx + 0x408], ebx
mov dword [edx + 0x414], ebx
mov dword [edx + 0x410], ebx
rep stosd dword es:[edi], eax
jmp 0x491d21
xor edx, edx
mov ecx, str.fonts_gold_numbers.fnt
mov dword [0x5b30e8], edx
call fcn.0041e9c0
mov eax, dword [0x5bd2a8]
test byte [0x5bd5d8], 1
jne 0x491d73
or dword [0x5bd5d8], 1
mov dword [esp + 0xb0], 0x11
call fcn.0042f9f0
push 0x52b6f0
call fcn.0045f177
mov dword [esp + 0xb4], 0xffffffff
mov eax, dword [0x5bd2a8]
add esp, 4
mov edi, dword [eax]
mov esi, eax
cmp edi, eax
je 0x491e06
nop
mov ecx, dword [edi + 8]
mov edx, dword [ecx]
mov eax, dword [edx + 4]
push 0x54bea0
call eax
test al, al
jne 0x491d9b
mov edi, dword [edi]
cmp edi, esi
jne 0x491d80
jmp 0x491e01
push 0x43c
call dword [sym.imp.MSVCR100.dll_void____cdecl_operator_new_unsigned_int_]
mov edx, eax
add esp, 4
cmp edx, ebx
je 0x491def
mov dword [edx + 0x42c], ebx
mov dword [edx + 0x430], ebx
mov dword [edx + 0x434], ebx
lea edi, [edx + 4]
mov ecx, 0x100
xor eax, eax
mov dword [edx + 0x404], ebx
mov dword [edx], ebx
mov dword [edx + 0x40c], ebx
mov dword [edx + 0x408], ebx
mov dword [edx + 0x414], ebx
mov dword [edx + 0x410], ebx
rep stosd dword es:[edi], eax
jmp 0x491df1
xor edx, edx
mov ecx, str.fonts_silver_numbers.fnt
mov dword [0x5b30ec], edx
call fcn.0041e9c0
mov eax, dword [0x5bd2a8]
test byte [0x5bd5d8], 1
jne 0x491e43
or dword [0x5bd5d8], 1
mov dword [esp + 0xb0], 0x12
call fcn.0042f9f0
push 0x52b6f0
call fcn.0045f177
mov dword [esp + 0xb4], 0xffffffff
mov eax, dword [0x5bd2a8]
add esp, 4
mov edi, dword [eax]
mov esi, eax
cmp edi, eax
je 0x491ed1
nop
mov ecx, dword [edi + 8]
mov edx, dword [ecx]
mov eax, dword [edx + 4]
push 0x54bed8
call eax
test al, al
jne 0x491e6b
mov edi, dword [edi]
cmp edi, esi
jne 0x491e50
jmp 0x491ed1
push 0x43c
call dword [sym.imp.MSVCR100.dll_void____cdecl_operator_new_unsigned_int_]
mov edx, eax
add esp, 4
cmp edx, ebx
je 0x491ebf
mov dword [edx + 0x42c], ebx
mov dword [edx + 0x430], ebx
mov dword [edx + 0x434], ebx
lea edi, [edx + 4]
mov ecx, 0x100
xor eax, eax
mov dword [edx + 0x404], ebx
mov dword [edx], ebx
mov dword [edx + 0x40c], ebx
mov dword [edx + 0x408], ebx
mov dword [edx + 0x414], ebx
mov dword [edx + 0x410], ebx
rep stosd dword es:[edi], eax
jmp 0x491ec1
xor edx, edx
mov ecx, str.fonts_bronze_numbers.fnt
mov dword [0x5b30f0], edx
call fcn.0041e9c0
cmp dword [0x5b30f8], ebx
jne 0x491f3f
push 0x43c
call dword [sym.imp.MSVCR100.dll_void____cdecl_operator_new_unsigned_int_]
mov edx, eax
add esp, 4
cmp edx, ebx
je 0x491f2d
mov dword [edx + 0x42c], ebx
mov dword [edx + 0x430], ebx
mov dword [edx + 0x434], ebx
lea edi, [edx + 4]
mov ecx, 0x100
xor eax, eax
mov dword [edx + 0x404], ebx
mov dword [edx], ebx
mov dword [edx + 0x40c], ebx
mov dword [edx + 0x408], ebx
mov dword [edx + 0x414], ebx
mov dword [edx + 0x410], ebx
rep stosd dword es:[edi], eax
jmp 0x491f2f
xor edx, edx
mov ecx, str.fonts_fruit_ninja_numbers_blue2.fnt
mov dword [0x5b30f8], edx
call fcn.0041e9c0
cmp dword [0x5b30e0], ebx
jne 0x491fad
push 0x43c
call dword [sym.imp.MSVCR100.dll_void____cdecl_operator_new_unsigned_int_]
mov edx, eax
add esp, 4
cmp edx, ebx
je 0x491f9b
mov dword [edx + 0x42c], ebx
mov dword [edx + 0x430], ebx
mov dword [edx + 0x434], ebx
lea edi, [edx + 4]
mov ecx, 0x100
xor eax, eax
mov dword [edx + 0x404], ebx
mov dword [edx], ebx
mov dword [edx + 0x40c], ebx
mov dword [edx + 0x408], ebx
mov dword [edx + 0x414], ebx
mov dword [edx + 0x410], ebx
rep stosd dword es:[edi], eax
jmp 0x491f9d
xor edx, edx
mov ecx, str.fonts_fruit_ninja_numbers_green.fnt
mov dword [0x5b30e0], edx
call fcn.0041e9c0
mov edx, str.back_icon.tex
lea ecx, [esp + 0x2c]
call fcn.004923a0
mov dword [esp + 0xb0], 0x13
mov edi, dword [eax]
cmp edi, ebx
je 0x491fdf
mov edx, dword [edi]
mov eax, dword [edx + 4]
mov ecx, edi
call eax
add eax, 4
push eax
call dword [sym.imp.KERNEL32.dll_InterlockedIncrement]
push edi
push 0x5b31f4
call dword [sym.imp.KERNEL32.dll_InterlockedExchange]
cmp eax, ebx
je 0x49203e
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 4]
call eax
mov edi, eax
lea esi, [edi + 4]
push esi
call dword [sym.imp.KERNEL32.dll_InterlockedDecrement]
cmp eax, ebx
jne 0x49203e
mov ecx, dword [edi + 8]
test ecx, ecx
je 0x492030
mov eax, dword [edi + 8]
push 1
push ebx
add eax, 0xc
push eax
call dword [sym.imp.KERNEL32.dll_InterlockedCompareExchange]
cmp eax, 1
je 0x492028
mov edx, dword [esi]
jmp 0x49203e
mov ecx, dword [edi + 8]
call fcn.004037e0
cmp edi, ebx
je 0x49203e
mov eax, dword [edi]
mov edx, dword [eax]
push 1
mov ecx, edi
call edx
push ebx
lea eax, [esp + 0x30]
push eax
mov dword [esp + 0xb8], 0xffffffff
call dword [sym.imp.KERNEL32.dll_InterlockedExchange]
cmp eax, ebx
je 0x4920a8
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 4]
call eax
mov edi, eax
lea esi, [edi + 4]
push esi
call dword [sym.imp.KERNEL32.dll_InterlockedDecrement]
test eax, eax
jne 0x4920a8
mov ecx, dword [edi + 8]
test ecx, ecx
je 0x49209a
mov eax, dword [edi + 8]
push 1
push ebx
add eax, 0xc
push eax
call dword [sym.imp.KERNEL32.dll_InterlockedCompareExchange]
cmp eax, 1
je 0x492092
mov edx, dword [esi]
jmp 0x4920a8
mov ecx, dword [edi + 8]
call fcn.004037e0
cmp edi, ebx
je 0x4920a8
mov eax, dword [edi]
mov edx, dword [eax]
push 1
mov ecx, edi
call edx
call fcn.004a0cc0
call fcn.004dd420
call fcn.004d34a0
call fcn.004d6c20
call fcn.004e5560
call fcn.004c29f0
call fcn.004a7b70
call fcn.004a52e0
call fcn.004a4cb0
call fcn.004a1b20
call fcn.0049a9b0
call fcn.00505f20
call fcn.0049bf20
call fcn.005024d0
call fcn.0048fb90
mov ecx, dword [esp + 0xa8]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x90]
xor ecx, esp
call fcn.0045f06e
mov esp, ebp
pop ebp
ret