Function at 0x497730
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x51b9ea
mov eax, dword fs:[0]
push eax
sub esp, 0x2a4
mov eax, dword [0x5750c8]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov esi, ecx
mov dword [ebp - 0x268], esi
call fcn.00496cc0
lea eax, [ebp - 0x2b0]
push eax
call fcn.00423a80
xor edi, edi
push 0x50
mov dword [ebp - 4], edi
call dword [sym.imp.MSVCR100.dll_void____cdecl_operator_new_unsigned_int_]
add esp, 4
mov dword [ebp - 0x254], eax
mov byte [ebp - 4], 1
cmp eax, edi
je 0x4977a8
push eax
mov ecx, 0x54c8fc
call fcn.00422c40
mov dword [ebp - 0x25c], eax
jmp 0x4977ae
mov dword [ebp - 0x25c], edi
mov edi, dword [ebp - 0x25c]
mov byte [ebp - 4], 0
mov ecx, dword [0x5b2b94]
add ecx, 4
push edi
mov edx, 0x54c908
call fcn.00422e80
mov eax, dword [esi + 0x38]
push eax
lea ecx, [ebp - 0x90]
push 0x553768
push ecx
mov edx, 0x40
call fcn.00425100
add esp, 0xc
push edi
lea ecx, [ebp - 0x90]
mov edx, str.highscore
call fcn.00422e80
mov edi, 0x576700
lea ebx, [esi + 0x4c]
mov eax, dword [edi]
push eax
push str._shighscore
lea edx, [ebp - 0x90]
call fcn.004198f0
mov eax, dword [ebx - 0x10]
push eax
lea edx, [ebp - 0x50]
push 0x553768
push edx
mov edx, 0x40
call fcn.00425100
mov eax, dword [ebp - 0x25c]
add esp, 0x14
push eax
lea ecx, [ebp - 0x50]
lea edx, [ebp - 0x90]
call fcn.00422e80
cmp dword [ebx], 0
jle 0x49788a
mov eax, dword [edi]
push eax
push str._s_unposted
lea edx, [ebp - 0x90]
call fcn.004198f0
mov eax, dword [ebx]
push eax
lea ecx, [ebp - 0x50]
push 0x553768
push ecx
mov edx, 0x40
call fcn.00425100
mov edx, dword [ebp - 0x25c]
add esp, 0x14
push edx
lea ecx, [ebp - 0x50]
lea edx, [ebp - 0x90]
call fcn.00422e80
mov eax, dword [edi]
push eax
push str._s_dolg
lea edx, [ebp - 0x90]
call fcn.004198f0
mov eax, dword [ebx + 0x17c]
push eax
lea eax, [ebp - 0x50]
push 0x553768
push eax
mov edx, 0x40
call fcn.00425100
mov ecx, dword [ebp - 0x25c]
add esp, 0x14
push ecx
lea ecx, [ebp - 0x50]
lea edx, [ebp - 0x90]
call fcn.00422e80
add edi, 4
add ebx, 4
cmp edi, 0x576710
jl 0x497802
mov eax, dword [esi + 0x108]
push eax
lea edx, [ebp - 0x50]
push 0x553768
push edx
mov edx, 0x40
call fcn.00425100
mov edi, dword [ebp - 0x25c]
add esp, 0xc
push edi
lea ecx, [ebp - 0x50]
mov edx, str.critical_chance
call fcn.00422e80
cmp byte [esi + 0x26], 0
mov ecx, 0x54c94c
jne 0x497922
mov ecx, 0x54c954
push edi
mov edx, str.rated
call fcn.00422e80
cmp byte [esi + 0x34], 0
mov ecx, 0x54c964
jne 0x49793d
mov ecx, 0x54c96c
push edi
mov edx, str.p2pCancelled
call fcn.00422e80
mov eax, dword [0x5b3204]
push eax
lea ecx, [ebp - 0x50]
push 0x553768
push ecx
mov edx, 0x40
call fcn.00425100
add esp, 0xc
push edi
lea ecx, [ebp - 0x50]
mov edx, str.appLicensedState
call fcn.00422e80
mov eax, edi
lea ecx, [ebp - 0x2b0]
call fcn.00422a50
push 0x50
call dword [sym.imp.MSVCR100.dll_void____cdecl_operator_new_unsigned_int_]
add esp, 4
mov dword [ebp - 0x254], eax
mov byte [ebp - 4], 2
test eax, eax
je 0x4979a7
push eax
mov ecx, str.volume
call fcn.00422c40
mov ebx, eax
jmp 0x4979a9
xor ebx, ebx
mov byte [ebp - 4], 0
movzx eax, word [esi + 0x20]
push eax
lea edx, [ebp - 0x50]
push 0x553768
push edx
mov edx, 0x40
call fcn.00425100
add esp, 0xc
push ebx
lea ecx, [ebp - 0x50]
mov edx, 0x54c9a0
call fcn.00422e80
movzx eax, word [esi + 0x22]
push eax
lea eax, [ebp - 0x50]
push 0x553768
push eax
mov edx, 0x40
call fcn.00425100
add esp, 0xc
push ebx
lea ecx, [ebp - 0x50]
mov edx, str.music
call fcn.00422e80
mov eax, ebx
mov ecx, edi
call fcn.00422a50
mov eax, dword [esi + 4]
mov edi, dword [eax]
cmp edi, eax
je 0x497ad0
push 0x50
call dword [sym.imp.MSVCR100.dll_void____cdecl_operator_new_unsigned_int_]
add esp, 4
mov dword [ebp - 0x254], eax
mov byte [ebp - 4], 3
test eax, eax
je 0x497a3d
push eax
mov ecx, 0x54c9ac
call fcn.00422c40
mov ebx, eax
jmp 0x497a3f
xor ebx, ebx
lea ecx, [edi + 0x10]
push ebx
mov edx, 0x54c9b4
mov byte [ebp - 4], 0
call fcn.00422e80
mov eax, dword [edi + 0x54]
push eax
lea ecx, [ebp - 0x50]
push 0x553768
push ecx
mov edx, 0x40
call fcn.00425100
add esp, 0xc
push ebx
lea ecx, [ebp - 0x50]
mov edx, 0x54c9bc
call fcn.00422e80
mov ecx, dword [ebp - 0x25c]
mov eax, ebx
call fcn.00422a50
cmp byte [edi + 0x59], 0
jne 0x497ac7
mov eax, dword [edi + 8]
cmp byte [eax + 0x59], 0
jne 0x497aac
mov edi, eax
mov eax, dword [edi]
cmp byte [eax + 0x59], 0
jne 0x497ac7
nop
mov edi, eax
mov eax, dword [edi]
cmp byte [eax + 0x59], 0
je 0x497aa0
jmp 0x497ac7
mov eax, dword [edi + 4]
cmp byte [eax + 0x59], 0
jne 0x497ac5
cmp edi, dword [eax + 8]
jne 0x497ac5
mov edi, eax
mov eax, dword [eax + 4]
cmp byte [eax + 0x59], 0
je 0x497ab5
mov edi, eax
cmp edi, dword [esi + 4]
jne 0x497a15
mov eax, dword [esi + 0x14]
mov edi, dword [eax]
cmp edi, eax
je 0x497bb0
lea ecx, [ecx]
push 0x50
call dword [sym.imp.MSVCR100.dll_void____cdecl_operator_new_unsigned_int_]
add esp, 4
mov dword [ebp - 0x254], eax
mov byte [ebp - 4], 4
test eax, eax
je 0x497b08
push eax
mov ecx, 0x54c9c4
call fcn.00422c40
mov ebx, eax
jmp 0x497b0a
xor ebx, ebx
push ebx
mov ecx, 0x54c9cc
mov edx, 0x54c9d4
mov byte [ebp - 4], 0
call fcn.00422e80
lea ecx, [edi + 0x10]
push ebx
mov edx, 0x54c9d8
call fcn.00422e80
mov eax, dword [edi + 0x54]
push eax
lea edx, [ebp - 0x50]
push 0x553768
push edx
mov edx, 0x40
call fcn.00425100
add esp, 0xc
push ebx
lea ecx, [ebp - 0x50]
mov edx, 0x54c9e0
call fcn.00422e80
mov ecx, dword [ebp - 0x25c]
mov eax, ebx
call fcn.00422a50
cmp byte [edi + 0x59], 0
jne 0x497ba7
mov eax, dword [edi + 8]
cmp byte [eax + 0x59], 0
jne 0x497b8c
mov edi, eax
mov eax, dword [edi]
cmp byte [eax + 0x59], 0
jne 0x497ba7
lea ebx, [ebx]
mov edi, eax
mov eax, dword [edi]
cmp byte [eax + 0x59], 0
je 0x497b80
jmp 0x497ba7
mov eax, dword [edi + 4]
cmp byte [eax + 0x59], 0
jne 0x497ba5
cmp edi, dword [eax + 8]
jne 0x497ba5
mov edi, eax
mov eax, dword [eax + 4]
cmp byte [eax + 0x59], 0
je 0x497b95
mov edi, eax
cmp edi, dword [esi + 0x14]
jne 0x497ae0
push 0x50
call dword [sym.imp.MSVCR100.dll_void____cdecl_operator_new_unsigned_int_]
add esp, 4
mov dword [ebp - 0x254], eax
mov byte [ebp - 4], 5
test eax, eax
je 0x497bdc
push eax
mov ecx, 0x54c9e8
call fcn.00422c40
mov dword [ebp - 0x258], eax
jmp 0x497be6
mov dword [ebp - 0x258], 0
mov byte [ebp - 4], 0
mov eax, dword [esi + 0x158]
mov edi, dword [eax]
cmp edi, eax
je 0x497ce1
lea ebx, [ebx]
push 0x50
call dword [sym.imp.MSVCR100.dll_void____cdecl_operator_new_unsigned_int_]
add esp, 4
mov dword [ebp - 0x254], eax
mov byte [ebp - 4], 6
test eax, eax
je 0x497c28
push eax
mov ecx, 0x54c9ec
call fcn.00422c40
mov ebx, eax
jmp 0x497c2a
xor ebx, ebx
lea ecx, [edi + 0x10]
push ebx
mov edx, 0x54c9f0
mov byte [ebp - 4], 0
call fcn.00422e80
fld dword [edi + 0x90]
sub esp, 8
fstp qword [esp]
lea eax, [ebp - 0x150]
push 0x55376c
push eax
mov edx, 0x100
call fcn.00425120
add esp, 0x10
push ebx
lea ecx, [ebp - 0x150]
mov edx, 0x54c9f8
call fcn.00422e80
mov ecx, dword [ebp - 0x258]
mov eax, ebx
call fcn.00422a50
cmp byte [edi + 0x95], 0
jne 0x497cd5
mov eax, dword [edi + 8]
cmp byte [eax + 0x95], 0
jne 0x497cb0
mov edi, eax
mov eax, dword [edi]
cmp byte [eax + 0x95], 0
jne 0x497cd5
mov edi, eax
mov eax, dword [edi]
cmp byte [eax + 0x95], 0
je 0x497ca1
jmp 0x497cd5
mov eax, dword [edi + 4]
cmp byte [eax + 0x95], 0
jne 0x497cd3
lea esp, [esp]
cmp edi, dword [eax + 8]
jne 0x497cd3
mov edi, eax
mov eax, dword [eax + 4]
cmp byte [eax + 0x95], 0
je 0x497cc0
mov edi, eax
cmp edi, dword [esi + 0x158]
jne 0x497c00
mov eax, dword [ebp - 0x258]
mov ecx, dword [ebp - 0x25c]
call fcn.00422a50
push 0x50
call dword [sym.imp.MSVCR100.dll_void____cdecl_operator_new_unsigned_int_]
add esp, 4
mov dword [ebp - 0x254], eax
mov byte [ebp - 4], 7
test eax, eax
je 0x497d1e
push eax
mov ecx, str.unlocked
call fcn.00422c40
mov dword [ebp - 0x258], eax
jmp 0x497d28
mov dword [ebp - 0x258], 0
mov byte [ebp - 4], 0
mov eax, dword [esi + 0x168]
mov edi, dword [eax]
cmp edi, eax
je 0x497df1
lea esp, [esp]
push 0x50
call dword [sym.imp.MSVCR100.dll_void____cdecl_operator_new_unsigned_int_]
add esp, 4
mov dword [ebp - 0x254], eax
mov byte [ebp - 4], 8
test eax, eax
je 0x497d68
push eax
mov ecx, 0x54ca0c
call fcn.00422c40
mov ebx, eax
jmp 0x497d6a
xor ebx, ebx
lea ecx, [edi + 0x10]
push ebx
mov edx, 0x54ca10
mov byte [ebp - 4], 0
call fcn.00422e80
mov ecx, dword [ebp - 0x258]
mov eax, ebx
call fcn.00422a50
cmp byte [edi + 0x95], 0
jne 0x497de5
mov eax, dword [edi + 8]
cmp byte [eax + 0x95], 0
jne 0x497dbf
mov edi, eax
mov eax, dword [edi]
cmp byte [eax + 0x95], 0
jne 0x497de5
jmp 0x497db0
mov edi, eax
mov eax, dword [edi]
cmp byte [eax + 0x95], 0
je 0x497db0
jmp 0x497de5
mov eax, dword [edi + 4]
cmp byte [eax + 0x95], 0
jne 0x497de3
jmp 0x497dd0
cmp edi, dword [eax + 8]
jne 0x497de3
mov edi, eax
mov eax, dword [eax + 4]
cmp byte [eax + 0x95], 0
je 0x497dd0
mov edi, eax
cmp edi, dword [esi + 0x168]
jne 0x497d40
mov eax, dword [ebp - 0x258]
mov ecx, dword [ebp - 0x25c]
call fcn.00422a50
cmp byte [esi + 0x25], 0
jne 0x497e1b
fldz
fcomp dword [esi + 0x128]
fnstsw ax
test ah, 5
jp 0x498bc2
push 0x50
call dword [sym.imp.MSVCR100.dll_void____cdecl_operator_new_unsigned_int_]
add esp, 4
mov dword [ebp - 0x254], eax
mov byte [ebp - 4], 9
test eax, eax
je 0x497e49
push eax
mov ecx, str.state
call fcn.00422c40
mov edi, eax
mov dword [ebp - 0x264], eax
jmp 0x497e51
xor edi, edi
mov dword [ebp - 0x264], edi
mov byte [ebp - 4], 0
cmp byte [esi + 0x68], 0
mov ecx, 0x54ca20
jne 0x497e65
mov ecx, 0x54ca28
push edi
mov edx, str.hasDropped
call fcn.00422e80
mov eax, dword [esi + 0x5c]
push eax
lea ecx, [ebp - 0x50]
push 0x553768
push ecx
mov edx, 0x40
call fcn.00425100
add esp, 0xc
push edi
lea ecx, [ebp - 0x50]
mov edx, 0x54ca3c
call fcn.00422e80
mov eax, dword [esi + 0x60]
push eax
lea edx, [ebp - 0x50]
push 0x553768
push edx
mov edx, 0x40
call fcn.00425100
add esp, 0xc
push edi
lea ecx, [ebp - 0x50]
mov edx, str.misses
call fcn.00422e80
mov eax, dword [esi + 0x64]
mov ecx, dword [eax*4 + 0x576700]
push edi
mov edx, 0x54ca4c
call fcn.00422e80
mov eax, dword [esi + 0x70]
push eax
lea ecx, [ebp - 0x50]
push 0x553768
push ecx
mov edx, 0x40
call fcn.00425100
add esp, 0xc
push edi
lea ecx, [ebp - 0x50]
mov edx, str.consecutiveCount
call fcn.00422e80
mov eax, dword [esi + 0x6c]
push eax
lea edx, [ebp - 0x50]
push 0x553768
push edx
mov edx, 0x40
call fcn.00425100
add esp, 0xc
push edi
lea ecx, [ebp - 0x50]
mov edx, str.consecutiveType
call fcn.00422e80
fld dword [esi + 0x104]
sub esp, 8
fstp qword [esp]
lea eax, [ebp - 0x250]
push 0x55376c
push eax
mov edx, 0x100
call fcn.00425120
add esp, 0x10
push edi
lea ecx, [ebp - 0x250]
mov edx, str.timer
call fcn.00422e80
fld dword [esi + 0x144]
sub esp, 8
fstp qword [esp]
push 0x54ca80
lea edx, [ebp - 0xd0]
call fcn.004198f0
add esp, 0xc
push edi
lea ecx, [ebp - 0xd0]
mov edx, str.globalWaveDt
call fcn.00422e80
mov byte [ebp - 0xd0], 0
xor ebx, ebx
cmp dword [esi + 0x74], ebx
jle 0x497ff8
lea esp, [esp]
test ebx, ebx
jne 0x497fbd
mov ecx, dword [esi + 0x78]
push ecx
push 0x54ca94
lea edx, [ebp - 0xd0]
call fcn.004198f0
add esp, 8
jmp 0x497fd8
mov edx, dword [esi + ebx*4 + 0x78]
push edx
lea eax, [ebp - 0xd0]
push eax
push 0x54ca98
mov edx, eax
call fcn.004198f0
add esp, 0xc
inc ebx
cmp ebx, dword [esi + 0x74]
jl 0x497fa0
cmp byte [ebp - 0xd0], 0
je 0x497ff8
push edi
lea ecx, [ebp - 0xd0]
mov edx, str.typesToPickFrom
call fcn.00422e80
xor ebx, ebx
cmp dword [esi + 0x1d8], ebx
jle 0x498049
test ebx, ebx
jne 0x498022
mov ecx, dword [esi + 0x1dc]
push ecx
push 0x54cab0
lea edx, [ebp - 0xd0]
call fcn.004198f0
add esp, 8
jmp 0x498040
mov edx, dword [esi + ebx*4 + 0x1dc]
push edx
lea eax, [ebp - 0xd0]
push eax
push str._s__i
mov edx, eax
call fcn.004198f0
add esp, 0xc
inc ebx
cmp ebx, dword [esi + 0x1d8]
jl 0x498002
cmp byte [ebp - 0xd0], 0
je 0x498063
push edi
lea ecx, [ebp - 0xd0]
mov edx, 0x54cabc
call fcn.00422e80
mov eax, dword [esi + 0x10c]
push eax
lea ecx, [ebp - 0x50]
push 0x553768
push ecx
mov edx, 0x40
call fcn.00425100
add esp, 0xc
push edi
lea ecx, [ebp - 0x50]
mov edx, str.go_state
call fcn.00422e80
fld dword [esi + 0x110]
sub esp, 8
fstp qword [esp]
lea edx, [ebp - 0x250]
push 0x55376c
push edx
mov edx, 0x100
call fcn.00425120
add esp, 0x10
push edi
lea ecx, [ebp - 0x250]
mov edx, str.go_time
call fcn.00422e80
fld dword [esi + 0x128]
sub esp, 8
fstp qword [esp]
lea eax, [ebp - 0x250]
push 0x55376c
push eax
mov edx, 0x100
call fcn.00425120
add esp, 0x10
push edi
lea ecx, [ebp - 0x250]
mov edx, str.go_bombHitTime
call fcn.00422e80
fld dword [esi + 0x12c]
sub esp, 8
fstp qword [esp]
lea ecx, [ebp - 0x250]
push 0x55376c
push ecx
mov edx, 0x100
call fcn.00425120
add esp, 0x10
push edi
lea ecx, [ebp - 0x250]
mov edx, str.go_transition
call fcn.00422e80
mov eax, dword [esi + 0x114]
push eax
lea edx, [ebp - 0x50]
push 0x553768
push edx
mov edx, 0x40
call fcn.00425100
add esp, 0xc
push edi
lea ecx, [ebp - 0x50]
mov edx, str.go_body
call fcn.00422e80
mov eax, dword [esi + 0x118]
push eax
lea eax, [ebp - 0x50]
push 0x553768
push eax
mov edx, 0x40
call fcn.00425100
add esp, 0xc
push edi
lea ecx, [ebp - 0x50]
mov edx, str.go_head
call fcn.00422e80
mov eax, dword [esi + 0x11c]
push eax
push 0x553768
lea ecx, [ebp - 0x50]
push ecx
mov edx, 0x40
call fcn.00425100
add esp, 0xc
push edi
lea ecx, [ebp - 0x50]
mov edx, str.go_fruit
call fcn.00422e80
mov eax, dword [esi + 0x120]
push eax
lea edx, [ebp - 0x50]
push 0x553768
push edx
mov edx, 0x40
call fcn.00425100
add esp, 0xc
push edi
lea ecx, [ebp - 0x50]
mov edx, str.go_fact
call fcn.00422e80
cmp byte [esi + 0x124], 0
mov ecx, 0x54cb20
jne 0x4981ef
mov ecx, 0x54cb28
push edi
mov edx, str.go_showHighScore
call fcn.00422e80
cmp byte [esi + 0x125], 0
mov ecx, 0x54cb44
jne 0x49820d
mov ecx, 0x54cb4c
push edi
mov edx, str.go_setScore
call fcn.00422e80
fldz
fcomp dword [esi + 0xfc]
fnstsw ax
test ah, 5
jp 0x4982cd
fld dword [esi + 0xf8]
sub esp, 8
fstp qword [esp]
lea eax, [ebp - 0x250]
push 0x55376c
push eax
mov edx, 0x100
call fcn.00425120
add esp, 0x10
push edi
lea ecx, [ebp - 0x250]
mov edx, str.speedLossTime
call fcn.00422e80
fld dword [esi + 0xfc]
sub esp, 8
fstp qword [esp]
lea ecx, [ebp - 0x250]
push 0x55376c
push ecx
mov edx, 0x100
call fcn.00425120
add esp, 0x10
push edi
lea ecx, [ebp - 0x250]
mov edx, str.desiredSpeed
call fcn.00422e80
fld dword [esi + 0x100]
sub esp, 8
fstp qword [esp]
lea edx, [ebp - 0x250]
push 0x55376c
push edx
mov edx, 0x100
call fcn.00425120
add esp, 0x10
push edi
lea ecx, [ebp - 0x250]
mov edx, str.nextComboBonus
call fcn.00422e80
fld dword [esi + 0x130]
sub esp, 8
fstp qword [esp]
lea eax, [ebp - 0x250]
push 0x55376c
push eax
mov edx, 0x100
call fcn.00425120
add esp, 0x10
push edi
lea ecx, [ebp - 0x250]
mov edx, str.shake_time
call fcn.00422e80
fld dword [esi + 0x130]
sub esp, 8
fstp qword [esp]
lea ecx, [ebp - 0x250]
push 0x55376c
push ecx
mov edx, 0x100
call fcn.00425120
add esp, 0x10
push edi
lea ecx, [ebp - 0x250]
mov edx, str.shake_max_time
call fcn.00422e80
push 0x50
call dword [sym.imp.MSVCR100.dll_void____cdecl_operator_new_unsigned_int_]
add esp, 4
mov dword [ebp - 0x254], eax
mov byte [ebp - 4], 0xa
test eax, eax
je 0x498367
push eax
mov ecx, str.wave_info
call fcn.00422c40
mov edi, eax
mov dword [ebp - 0x254], eax
jmp 0x49836f
xor edi, edi
mov dword [ebp - 0x254], edi
mov byte [ebp - 4], 0
mov eax, dword [esi + 0x138]
push eax
lea edx, [ebp - 0x50]
push 0x553768
push edx
mov edx, 0x40
call fcn.00425100
add esp, 0xc
push edi
lea ecx, [ebp - 0x50]
mov edx, 0x54cbb8
call fcn.00422e80
fld dword [esi + 0x13c]
sub esp, 8
fstp qword [esp]
lea eax, [ebp - 0x250]
push 0x55376c
push eax
mov edx, 0x100
call fcn.00425120
add esp, 0x10
push edi
lea ecx, [ebp - 0x250]
mov edx, str.waveDelay
call fcn.00422e80
fld dword [esi + 0x140]
sub esp, 8
fstp qword [esp]
lea ecx, [ebp - 0x250]
push 0x55376c
push ecx
mov edx, 0x100
call fcn.00425120
add esp, 0x10
push edi
lea ecx, [ebp - 0x250]
mov edx, str.waveWait
call fcn.00422e80
mov eax, dword [esi + 0x174]
push eax
lea edx, [ebp - 0x50]
push 0x553768
push edx
mov edx, 0x40
call fcn.00425100
add esp, 0xc
push edi
lea ecx, [ebp - 0x50]
mov edx, str.blitzSpawnedThisGame
call fcn.00422e80
mov eax, dword [esi + 0x178]
push eax
lea eax, [ebp - 0x50]
push 0x553768
push eax
mov edx, 0x40
call fcn.00425100
add esp, 0xc
push edi
lea ecx, [ebp - 0x50]
mov edx, str.blitzForceSpawnedCounter
call fcn.00422e80
fld dword [esi + 0x17c]
sub esp, 8
fstp qword [esp]
lea ecx, [ebp - 0x250]
push 0x55376c
push ecx
mov edx, 0x100
call fcn.00425120
add esp, 0x10
push edi
lea ecx, [ebp - 0x250]
mov edx, str.blitzSpawnTime
call fcn.00422e80
mov esi, dword [esi + 0x148]
mov ebx, dword [esi]
cmp ebx, esi
je 0x498616
push 0x50
call dword [sym.imp.MSVCR100.dll_void____cdecl_operator_new_unsigned_int_]
add esp, 4
mov dword [ebp - 0x258], eax
mov byte [ebp - 4], 0xb
test eax, eax
je 0x4984d2
push eax
mov ecx, str.wave
call fcn.00422c40
mov dword [ebp - 0x258], eax
jmp 0x4984dc
mov dword [ebp - 0x258], 0
mov byte [ebp - 4], 0
fld dword [ebx + 0x14]
fadd qword [0x554d30]
call fcn.00513620
push eax
lea edx, [ebp - 0x50]
push 0x553768
push edx
mov edx, 0x40
call fcn.00425100
mov esi, dword [ebp - 0x258]
add esp, 0xc
push esi
lea ecx, [ebp - 0x50]
mov edx, 0x54cc28
call fcn.00422e80
mov eax, dword [ebx + 0x18]
push eax
lea eax, [ebp - 0x50]
push 0x553768
push eax
mov edx, 0x40
call fcn.00425100
add esp, 0xc
push esi
lea ecx, [ebp - 0x50]
mov edx, str.index
call fcn.00422e80
mov eax, dword [ebx + 8]
mov edi, dword [eax]
cmp edi, eax
je 0x4985f1
mov edi, edi
push 0x50
call dword [sym.imp.MSVCR100.dll_void____cdecl_operator_new_unsigned_int_]
add esp, 4
mov dword [ebp - 0x260], eax
mov byte [ebp - 4], 0xc
test eax, eax
je 0x498578
push eax
mov ecx, str.spawner
call fcn.00422c40
mov esi, eax
jmp 0x49857a
xor esi, esi
mov byte [ebp - 4], 0
fld dword [edi + 0xc]
sub esp, 8
fstp qword [esp]
lea ecx, [ebp - 0x250]
push 0x55376c
push ecx
mov edx, 0x100
call fcn.00425120
add esp, 0x10
push esi
lea ecx, [ebp - 0x250]
mov edx, 0x54cc3c
call fcn.00422e80
mov eax, dword [edi + 8]
push eax
lea edx, [ebp - 0x50]
push 0x553768
push edx
mov edx, 0x40
call fcn.00425100
add esp, 0xc
push esi
lea ecx, [ebp - 0x50]
mov edx, str.toSpawn
call fcn.00422e80
mov ecx, dword [ebp - 0x258]
mov eax, esi
call fcn.00422a50
mov edi, dword [edi]
cmp edi, dword [ebx + 8]
jne 0x498550
mov eax, dword [ebp - 0x258]
mov ecx, dword [ebp - 0x254]
call fcn.00422a50
mov ebx, dword [ebx]
mov eax, dword [ebp - 0x268]
cmp ebx, dword [eax + 0x148]
jne 0x4984a6
mov eax, dword [ebp - 0x254]
mov ecx, dword [ebp - 0x264]
call fcn.00422a50
test byte [0x5c219c], 1
jne 0x498651
or dword [0x5c219c], 1
mov byte [ebp - 4], 0xd
call fcn.004e7170
push 0x5293c0
call fcn.0045f177
add esp, 4
mov byte [ebp - 4], 0
mov ecx, dword [0x5c0b00]
mov eax, dword [ecx]
mov ebx, dword [eax]
cmp ebx, eax
je 0x498821
mov edi, dword [ebx + 8]
test edi, edi
je 0x498821
mov edi, edi
cmp byte [edi + 0xb8], 0
jne 0x4987e1
cmp byte [edi + 0x164], 0
jne 0x4987e1
push 0x50
call dword [sym.imp.MSVCR100.dll_void____cdecl_operator_new_unsigned_int_]
add esp, 4
mov dword [ebp - 0x260], eax
mov byte [ebp - 4], 0xe
test eax, eax
je 0x4986b2
push eax
mov ecx, 0x54cc4c
call fcn.00422c40
mov esi, eax
jmp 0x4986b4
xor esi, esi
mov byte [ebp - 4], 0
fld dword [edi + 0x18]
sub esp, 0x18
fstp qword [esp + 0x10]
lea edx, [ebp - 0xd0]
fld dword [edi + 0x14]
fstp qword [esp + 8]
fld dword [edi + 0x10]
fstp qword [esp]
push 0x54cc50
call fcn.004198f0
add esp, 0x1c
push esi
lea ecx, [ebp - 0xd0]
mov edx, 0x54cc5c
call fcn.00422e80
fld dword [edi + 0x24]
sub esp, 0x18
fstp qword [esp + 0x10]
lea edx, [ebp - 0xd0]
fld dword [edi + 0x20]
fstp qword [esp + 8]
fld dword [edi + 0x1c]
fstp qword [esp]
push 0x54cc60
call fcn.004198f0
add esp, 0x1c
push esi
lea ecx, [ebp - 0xd0]
mov edx, 0x54cc6c
call fcn.00422e80
fld dword [edi + 0xa8]
sub esp, 0x18
fstp qword [esp + 0x10]
lea edx, [ebp - 0xd0]
fld dword [edi + 0xa4]
fstp qword [esp + 8]
fld dword [edi + 0xa0]
fstp qword [esp]
push 0x54cc70
call fcn.004198f0
add esp, 0x1c
push esi
lea ecx, [ebp - 0xd0]
mov edx, 0x54cc7c
call fcn.00422e80
movzx eax, byte [edi + 0x3c]
push eax
lea edx, [ebp - 0x50]
push 0x553768
push edx
mov edx, 0x40
call fcn.00425100
add esp, 0xc
push esi
lea ecx, [ebp - 0x50]
mov edx, 0x54cc84
call fcn.00422e80
fld dword [edi + 0x74]
sub esp, 8
fstp dword [ebp - 0x254]
lea edx, [ebp - 0xd0]
fld dword [ebp - 0x254]
fstp qword [esp]
push 0x54cc8c
call fcn.004198f0
add esp, 0xc
push esi
lea ecx, [ebp - 0xd0]
mov edx, 0x54cc90
call fcn.00422e80
mov ecx, dword [ebp - 0x264]
mov eax, esi
call fcn.00422a50
test byte [0x5c219c], 1
jne 0x49880b
or dword [0x5c219c], 1
mov byte [ebp - 4], 0xf
call fcn.004e7170
push 0x5293c0
call fcn.0045f177
add esp, 4
mov byte [ebp - 4], 0
mov ebx, dword [ebx]
mov eax, dword [0x5c0b00]
cmp ebx, dword [eax]
je 0x498821
mov edi, dword [ebx + 8]
test edi, edi
jne 0x498670
test byte [0x5c219c], 1
jne 0x49884b
or dword [0x5c219c], 1
mov byte [ebp - 4], 0x10
call fcn.004e7170
push 0x5293c0
call fcn.0045f177
add esp, 4
mov byte [ebp - 4], 0
mov ecx, dword [0x5c0b00]
mov eax, dword [ecx + 0xc]
mov esi, dword [eax]
mov dword [ebp - 0x258], esi
cmp esi, eax
je 0x498a58
mov edi, dword [esi + 8]
test edi, edi
je 0x498a58
mov ebx, dword [sym.imp.MSVCR100.dll_void____cdecl_operator_new_unsigned_int_]
jmp 0x498880
cmp byte [edi + 0x88], 0
jne 0x498a11
push 0x50
call ebx
add esp, 4
mov dword [ebp - 0x260], eax
mov byte [ebp - 4], 0x11
test eax, eax
je 0x4988b1
push eax
mov ecx, 0x54cc98
call fcn.00422c40
mov esi, eax
jmp 0x4988b3
xor esi, esi
mov byte [ebp - 4], 0
fld dword [edi + 0x18]
sub esp, 0x18
fstp qword [esp + 0x10]
lea edx, [ebp - 0xd0]
fld dword [edi + 0x14]
fstp qword [esp + 8]
fld dword [edi + 0x10]
fstp qword [esp]
push 0x54cc9c
call fcn.004198f0
add esp, 0x1c
push esi
lea ecx, [ebp - 0xd0]
mov edx, 0x54cca8
call fcn.00422e80
fld dword [edi + 0x24]
sub esp, 0x18
fstp qword [esp + 0x10]
lea edx, [ebp - 0xd0]
fld dword [edi + 0x20]
fstp qword [esp + 8]
fld dword [edi + 0x1c]
fstp qword [esp]
push 0x54ccac
call fcn.004198f0
add esp, 0x1c
push esi
lea ecx, [ebp - 0xd0]
mov edx, 0x54ccb8
call fcn.00422e80
fld dword [edi + 0x94]
sub esp, 0x18
fstp qword [esp + 0x10]
lea edx, [ebp - 0xd0]
fld dword [edi + 0x90]
fstp qword [esp + 8]
fld dword [edi + 0x8c]
fstp qword [esp]
push 0x54ccbc
call fcn.004198f0
add esp, 0x1c
push esi
lea ecx, [ebp - 0xd0]
mov edx, str.grav
call fcn.00422e80
mov ecx, dword [0x5b2ad8]
push ecx
lea edx, [ebp - 0x50]
push 0x553768
push edx
mov edx, 0x40
call fcn.00425100
add esp, 0xc
push esi
lea ecx, [ebp - 0x50]
mov edx, 0x54ccd0
call fcn.00422e80
cmp byte [edi + 0x68], 0
mov ecx, 0x54ccd8
jne 0x4989ac
mov ecx, 0x54cce0
push esi
mov edx, 0x54cce8
call fcn.00422e80
cmp byte [edi + 0x68], 0
je 0x4989c2
fld dword [edi + 0x3c]
jmp 0x4989c8
fld dword [edi + 0xa4]
fstp dword [ebp - 0x254]
sub esp, 8
fld dword [ebp - 0x254]
lea edx, [ebp - 0xd0]
fstp qword [esp]
push 0x54ccec
call fcn.004198f0
add esp, 0xc
push esi
lea ecx, [ebp - 0xd0]
mov edx, 0x54ccf0
call fcn.00422e80
mov ecx, dword [ebp - 0x264]
mov eax, esi
call fcn.00422a50
mov esi, dword [ebp - 0x258]
test byte [0x5c219c], 1
jne 0x498a3b
or dword [0x5c219c], 1
mov byte [ebp - 4], 0x12
call fcn.004e7170
push 0x5293c0
call fcn.0045f177
add esp, 4
mov byte [ebp - 4], 0
mov esi, dword [esi]
mov eax, dword [0x5c0b00]
mov dword [ebp - 0x258], esi
cmp esi, dword [eax + 0xc]
je 0x498a58
mov edi, dword [esi + 8]
test edi, edi
jne 0x498880
test byte [0x5c219c], 1
jne 0x498a82
or dword [0x5c219c], 1
mov byte [ebp - 4], 0x13
call fcn.004e7170
push 0x5293c0
call fcn.0045f177
add esp, 4
mov byte [ebp - 4], 0
mov ecx, dword [0x5c0b00]
mov eax, dword [ecx + 0x30]
mov ebx, dword [eax]
cmp ebx, eax
je 0x498bab
mov edi, dword [ebx + 8]
test edi, edi
je 0x498bab
push 0x50
call dword [sym.imp.MSVCR100.dll_void____cdecl_operator_new_unsigned_int_]
add esp, 4
mov dword [ebp - 0x260], eax
mov byte [ebp - 4], 0x14
test eax, eax
je 0x498ac8
push eax
mov ecx, 0x54ccf8
call fcn.00422c40
mov esi, eax
jmp 0x498aca
xor esi, esi
mov byte [ebp - 4], 0
fld dword [edi + 0x18]
sub esp, 0x18
fstp qword [esp + 0x10]
lea edx, [ebp - 0xd0]
fld dword [edi + 0x14]
fstp qword [esp + 8]
fld dword [edi + 0x10]
fstp qword [esp]
push 0x54ccfc
call fcn.004198f0
add esp, 0x1c
push esi
lea ecx, [ebp - 0xd0]
mov edx, 0x54cd08
call fcn.00422e80
fld dword [edi + 0x6c]
sub esp, 8
fstp qword [esp]
push 0x54cd0c
lea edx, [ebp - 0xd0]
call fcn.004198f0
add esp, 0xc
push esi
lea ecx, [ebp - 0xd0]
mov edx, 0x54cd10
call fcn.00422e80
push 0xffffffffffffffff
lea ecx, [ebp - 0x50]
push 0x553768
push ecx
mov edx, 0x40
call fcn.00425100
add esp, 0xc
push esi
lea ecx, [ebp - 0x50]
mov edx, 0x54cd18
call fcn.00422e80
mov ecx, dword [ebp - 0x264]
mov eax, esi
call fcn.00422a50
test byte [0x5c219c], 1
jne 0x498b93
or dword [0x5c219c], 1
mov byte [ebp - 4], 0x15
call fcn.004e7170
push 0x5293c0
call fcn.0045f177
add esp, 4
mov byte [ebp - 4], 0
mov ebx, dword [ebx]
mov edx, dword [0x5c0b00]
cmp ebx, dword [edx + 0x30]
je 0x498bab
mov edi, dword [ebx + 8]
test edi, edi
jne 0x498aa0
mov eax, dword [ebp - 0x264]
mov ecx, dword [ebp - 0x25c]
call fcn.00422a50
mov esi, dword [ebp - 0x268]
add esi, 0x184
mov dword [ebp - str.CLASSIC], 0x576700
mov dword [ebp - 0x258], esi
jmp 0x498be0
mov eax, dword [ebp - 0x254]
mov eax, dword [eax]
push eax
push str.wave_counts__s
lea edx, [ebp - 0xd0]
call fcn.004198f0
push 0x50
call dword [sym.imp.MSVCR100.dll_void____cdecl_operator_new_unsigned_int_]
add esp, 0xc
mov dword [ebp - 0x260], eax
mov byte [ebp - 4], 0x16
test eax, eax
je 0x498c22
push eax
lea ecx, [ebp - 0xd0]
call fcn.00422c40
mov ebx, eax
jmp 0x498c24
xor ebx, ebx
mov byte [ebp - 4], 0
mov ecx, dword [ebp - 0x258]
mov eax, dword [ecx]
mov esi, dword [eax]
cmp esi, eax
je 0x498d15
lea ebx, [ebx]
push 0x50
call dword [sym.imp.MSVCR100.dll_void____cdecl_operator_new_unsigned_int_]
add esp, 4
mov dword [ebp - 0x260], eax
mov byte [ebp - 4], 0x17
test eax, eax
je 0x498c68
push eax
mov ecx, str.game_count
call fcn.00422c40
mov edi, eax
jmp 0x498c6a
xor edi, edi
mov byte [ebp - 4], 0
mov eax, dword [esi + 0xc]
push eax
lea edx, [ebp - 0x50]
push 0x553768
push edx
mov edx, 0x40
call fcn.00425100
add esp, 0xc
push edi
lea ecx, [ebp - 0x50]
mov edx, str.waveIdx
call fcn.00422e80
mov eax, dword [esi + 0x10]
push eax
lea eax, [ebp - 0x50]
push 0x553768
push eax
mov edx, 0x40
call fcn.00425100
add esp, 0xc
push edi
lea ecx, [ebp - 0x50]
mov edx, 0x54cd44
call fcn.00422e80
mov eax, edi
mov ecx, ebx
call fcn.00422a50
cmp byte [esi + 0x15], 0
jne 0x498d07
mov eax, dword [esi + 8]
cmp byte [eax + 0x15], 0
jne 0x498cec
mov esi, eax
mov eax, dword [esi]
cmp byte [eax + 0x15], 0
jne 0x498d07
mov esi, eax
mov eax, dword [esi]
cmp byte [eax + 0x15], 0
je 0x498ce0
jmp 0x498d07
mov eax, dword [esi + 4]
cmp byte [eax + 0x15], 0
jne 0x498d05
cmp esi, dword [eax + 8]
jne 0x498d05
mov esi, eax
mov eax, dword [eax + 4]
cmp byte [eax + 0x15], 0
je 0x498cf5
mov esi, eax
mov ecx, dword [ebp - 0x258]
cmp esi, dword [ecx]
jne 0x498c40
mov ecx, dword [ebp - 0x25c]
mov eax, ebx
call fcn.00422a50
mov eax, dword [ebp - 0x254]
add dword [ebp - 0x258], 0x10
add eax, 4
mov dword [ebp - 0x254], eax
cmp eax, 0x576710
jl 0x498be0
push 0x50
call dword [sym.imp.MSVCR100.dll_void____cdecl_operator_new_unsigned_int_]
add esp, 4
mov dword [ebp - 0x260], eax
mov byte [ebp - 4], 0x18
test eax, eax
je 0x498d6b
push eax
mov ecx, str.powers
call fcn.00422c40
mov esi, eax
jmp 0x498d6d
xor esi, esi
mov byte [ebp - 4], 0
test byte [0x5fce1c], 1
jne 0x498d9b
or dword [0x5fce1c], 1
mov byte [ebp - 4], 0x19
call fcn.004eaaa0
push 0x529360
call fcn.0045f177
add esp, 4
mov byte [ebp - 4], 0
push 0x5fcd70
mov ecx, esi
call fcn.004ea090
mov ecx, dword [ebp - 0x25c]
mov eax, esi
call fcn.00422a50
cmp byte [0x5bcc46], 0
jne 0x498dd3
mov ecx, str.FruitySaveHD.xml
mov ebx, 0x5bf938
mov byte [0x5bcc46], 1
call fcn.00495800
mov edx, 0x5bf938
lea esi, [ebp - 0x2b0]
call fcn.00423fe0
mov eax, dword [ebp - 0x27c]
mov edi, dword [sym.imp.MSVCR100.dll_void___cdecl_operator_delete___void__]
mov dword [ebp - method.TiXmlDocument.virtual_0], vtable.TiXmlDocument.0
cmp eax, 0x5b2bb4
je 0x498e06
push eax
call edi
add esp, 4
mov dword [ebp - method.TiXmlNode.virtual_0], vtable.TiXmlNode.0
mov dword [ebp - 4], 0x1b
mov esi, dword [ebp - 0x298]
test esi, esi
je 0x498e32
mov ecx, esi
mov edx, dword [ecx]
mov eax, dword [edx]
mov esi, dword [esi + 0x28]
push 1
call eax
test esi, esi
jne 0x498e21
mov eax, dword [ebp - 0x290]
cmp eax, 0x5b2bb4
je 0x498e45
push eax
call edi
add esp, 4
xor al, al
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.0045f06e
mov esp, ebp
pop ebp
ret