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

Disassembly:
sub esp, 0x90
push ebp
mov ebp, dword [esp + 0x98]
push esi
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov esi, eax
push 0
mov dword [esp + 0x1c], esi
call fcn.004ad6ed
mov dword [esp + 0x14], eax
mov eax, dword [0x534144]
add esp, 4
test eax, eax
je 0x462e7a
mov ecx, dword [0x513e44]
cmp esi, ecx
jb 0x463684
sub esi, ecx
cmp esi, eax
jb 0x463684
xor eax, eax
push ebx
push edi
mov ecx, 0xc
lea edi, [esp + 0x38]
rep stosd dword es:[edi], eax
mov ecx, 0xc
lea edi, [esp + 0x68]
rep stosd dword es:[edi], eax
mov eax, dword [ebp + 0x10]
xor ecx, ecx
neg eax
sbb eax, eax
cmp eax, ecx
mov dword [ebp + 0x1444], ecx
mov dword [ebp + 0x1448], ecx
mov dword [ebp + 0x144c], ecx
mov dword [ebp + 0x1450], ecx
mov dword [esp + 0x30], eax
mov edi, 7
mov ebx, 1
je 0x462f45
lea esi, [ebp + 4]
lea ebx, [ebx]
lea eax, [esp + 0x1c]
push eax
lea ecx, [esp + 0x2c]
push ecx
lea edx, [esp + 0x38]
push edx
mov ecx, esi
call fcn.004be0d6
mov eax, dword [esp + 0x1c]
cmp dword [eax + 0x48c], edi
jne 0x462f3d
mov ecx, dword [eax + 0x488]
cmp ecx, 2
jne 0x462f1c
mov eax, dword [eax + 0x4b8]
cmp eax, ebx
jne 0x462f0f
mov dword [ebp + 0x1444], ebx
jmp 0x462f3d
cmp eax, 2
jne 0x462f3d
mov dword [ebp + 0x1448], ebx
jmp 0x462f3d
cmp ecx, ebx
jne 0x462f3d
mov eax, dword [eax + 0x4b8]
cmp eax, ebx
jne 0x462f32
mov dword [ebp + 0x144c], ebx
jmp 0x462f3d
cmp eax, 2
jne 0x462f3d
mov dword [ebp + 0x1450], ebx
mov eax, dword [esp + 0x30]
test eax, eax
jne 0x462ed0
mov eax, dword [ebp + 0x10]
neg eax
sbb eax, eax
mov dword [esp + 0x1c], eax
je 0x46301d
lea esi, [ebp + 4]
lea esp, [esp]
lea eax, [esp + 0x10]
push eax
lea ecx, [esp + 0x2c]
push ecx
lea edx, [esp + 0x24]
push edx
mov ecx, esi
call fcn.004be0d6
mov ecx, dword [esp + 0x10]
mov eax, dword [ecx + 0x48c]
cmp eax, edi
jne 0x463000
mov eax, dword [ecx + 0x4b8]
cmp eax, ebx
je 0x462fcf
mov edx, dword [ebp + 0x1444]
test edx, edx
je 0x462fad
cmp dword [ecx + 0x488], 2
jne 0x462fad
mov eax, dword [ecx]
push 0x3f0d
call dword [eax + 0x38]
jmp 0x463011
cmp eax, ebx
je 0x462fcf
mov edx, dword [ebp + 0x144c]
test edx, edx
je 0x462fcf
cmp dword [ecx + 0x488], ebx
jne 0x462fcf
mov edx, dword [ecx]
push 0x3f0d
call dword [edx + 0x38]
jmp 0x463011
cmp eax, 2
je 0x462ff1
mov eax, dword [esp + 0x18]
sub eax, dword [ecx + 0x20]
cmp eax, 0x1f40
jbe 0x463011
mov ecx, dword [ecx + 0x488]
lea eax, [ecx + ecx*2]
lea eax, [esp + eax*4 + 0x3c]
jmp 0x46300f
mov ecx, dword [ecx + 0x488]
lea eax, [ecx + ecx*2]
lea eax, [esp + eax*4 + 0x40]
jmp 0x46300f
jge 0x463011
mov ecx, dword [ecx + 0x488]
lea eax, [ecx + ecx*2]
lea eax, [esp + eax*4 + 0x38]
inc dword [eax]
mov eax, dword [esp + 0x1c]
test eax, eax
jne 0x462f60
mov eax, dword [ebp + 0x1448]
test eax, eax
jne 0x463033
mov dword [ebp + 0x1454], 0
jmp 0x463047
mov eax, dword [ebp + 0x1454]
test eax, eax
jne 0x463047
mov ecx, dword [esp + 0x18]
mov dword [ebp + 0x1454], ecx
mov eax, dword [0x53426c]
test eax, eax
mov ecx, dword [0x53427c]
mov esi, 3
jne 0x463096
mov eax, dword [ebp + 0x1454]
test eax, eax
jbe 0x463096
mov edx, dword [0x513e38]
test edx, edx
je 0x463096
mov edx, dword [esp + 0x18]
sub edx, eax
cmp edx, 0x7080
jbe 0x463096
lea eax, [ecx + ecx*2]
cdq
and edx, esi
add eax, edx
mov edx, dword [esp + 0x54]
sar eax, 2
cmp edx, eax
jle 0x463096
mov dword [0x53426c], ebx
mov eax, dword [0x534200]
xor edx, edx
cmp eax, edx
jne 0x4630ab
mov dword [esp + 0x7c], edx
mov dword [esp + 0x78], edx
jmp 0x4630f9
cmp dword [ebp + 0x144c], edx
mov edi, dword [0x534208]
je 0x4630d7
mov eax, 2
mov dword [esp + 0x10], eax
cmp edi, eax
lea eax, [esp + 0x10]
jg 0x4630cf
mov eax, 0x534208
mov eax, dword [eax]
mov dword [esp + 0x78], eax
jmp 0x4630f9
mov eax, dword [0x534210]
cmp eax, edi
mov eax, 0x534208
jl 0x4630ea
mov eax, 0x534210
mov eax, dword [eax]
mov dword [esp + 0x78], eax
mov eax, dword [0x53420c]
mov dword [esp + 0x7c], eax
cmp dword [0x534270], edx
jne 0x463111
mov dword [esp + 0x88], edx
mov dword [esp + 0x84], edx
jmp 0x463160
cmp dword [ebp + 0x1444], edx
je 0x463139
cmp dword [0x534278], esi
mov dword [esp + 0x10], esi
lea eax, [esp + 0x10]
jg 0x46312e
mov eax, 0x534278
mov ecx, dword [eax]
mov dword [esp + 0x84], ecx
jmp 0x463160
mov eax, dword [0x534280]
cmp eax, dword [0x534278]
mov eax, 0x534278
jl 0x463150
mov eax, 0x534280
mov eax, dword [eax]
mov dword [esp + 0x84], eax
mov dword [esp + 0x88], ecx
cmp dword [0x5342d4], edx
je 0x463186
cmp dword [0x5342e0], ebx
mov dword [esp + 0x10], ebx
mov eax, 0x5342e0
jb 0x46317d
lea eax, [esp + 0x10]
mov ecx, dword [eax]
mov dword [esp + 0x90], ecx
mov eax, dword [esp + 0x38]
mov edx, dword [esp + 0x44]
mov ecx, dword [esp + 0x50]
add edx, eax
add ecx, eax
mov ebx, esi
mov dword [esp + 0x44], edx
mov dword [esp + 0x50], ecx
mov dword [esp + 0x14], ebx
jmp 0x4631b1
mov ebp, dword [esp + 0xa4]
mov ebx, dword [esp + 0x14]
lea eax, [ebx + ebx*2]
shl eax, 2
mov esi, dword [esp + eax + 0x3c]
test esi, esi
mov dword [esp + 0x24], eax
jle 0x4631ce
mov edx, dword [esp + 0x18]
mov dword [ebp + ebx*4 + 0x1458], edx
mov edi, dword [esp + eax + 0x6c]
cmp esi, edi
jge 0x46353b
cmp ebx, 1
jne 0x4631fd
cmp dword [0x534270], ebx
jne 0x4631fd
mov eax, dword [esp + 0x20]
push 0x513e08
call fcn.004647e0
test eax, eax
je 0x463682
mov eax, ebx
dec eax
je 0x463501
dec eax
je 0x4634ec
dec eax
je 0x463224
xor ebp, ebp
cmp ebx, 3
je 0x463229
sub edi, esi
imul edi, dword [0x5341c8]
mov eax, edi
jmp 0x46324e
mov ebp, 0x5121e0
mov eax, dword [0x5342dc]
test eax, eax
je 0x463249
mov eax, dword [esp + 0x20]
push 0x513e08
call fcn.004647e0
test eax, eax
mov eax, 2
jne 0x46324e
mov eax, 1
mov ecx, dword [0x5343e8]
add ecx, 0xfffffffe
mov dword [esp + 0x10], eax
cmp ecx, eax
mov dword [esp + 0x2c], ecx
lea eax, [esp + 0x2c]
jl 0x46326b
lea eax, [esp + 0x10]
mov ebx, dword [eax]
cmp dword [esp + 0x14], 3
jne 0x463387
mov esi, dword [ebp + 0x10]
test esi, esi
je 0x463387
mov edi, dword [esp + 0x18]
jmp 0x463290
cmp dword [esp + 0x5c], ebx
jge 0x463387
mov eax, dword [esi + 0x1c]
test eax, eax
je 0x46337c
mov ecx, dword [esi + 0x48]
test ecx, ecx
mov eax, edi
je 0x4632e4
mov ecx, dword [esi + 0x10]
cmp ecx, dword [0x513e2c]
je 0x46337c
test edi, edi
jne 0x4632ca
push edi
call fcn.004ad6ed
add esp, 4
mov edx, dword [esi + 0x48]
mov ecx, dword [0x5341f0]
sub eax, edx
cmp eax, ecx
sbb edx, edx
inc edx
mov dword [esp + 0x2c], edx
je 0x46337c
push 0
call fcn.004ad6ed
lea edx, [esi + 0x10]
add esp, 4
test edx, edx
mov dword [esi + 0x48], eax
je 0x46337c
mov eax, dword [0x534124]
test eax, eax
je 0x463345
mov eax, dword [edx]
test eax, eax
je 0x46337c
mov ecx, eax
and ecx, 0xffff
cmp ecx, 0xa8c0
je 0x46337c
mov ecx, eax
and ecx, 0xf0ac
cmp ecx, 0x8ac
je 0x46337c
mov ecx, eax
and ecx, 0xff
cmp ecx, 0xa
je 0x46337c
cmp ecx, 0x7f
je 0x46337c
cmp eax, dword [0x513e2c]
je 0x46337c
mov eax, dword [esi + 0xc]
xor ecx, ecx
mov cx, word [esi + 0x14]
push 0
push 1
push eax
push ecx
push edx
mov ecx, 0x512990
call fcn.00461ae0
test eax, eax
je 0x46337c
mov ecx, dword [esp + 0x5c]
mov dword [esi + 0x4c], edi
mov eax, dword [0x534144]
inc ecx
test eax, eax
mov dword [esp + 0x5c], ecx
jne 0x463674
mov esi, dword [esi + 4]
test esi, esi
jne 0x463290
mov esi, dword [ebp + 0x10]
test esi, esi
je 0x46349a
mov edx, dword [esp + 0x24]
mov edi, dword [esp + edx + 0x38]
cmp edi, ebx
jge 0x46349a
mov ecx, dword [esi + 0x48]
test ecx, ecx
mov eax, dword [esp + 0x18]
je 0x4633e6
mov ecx, dword [0x513e2c]
cmp dword [esi + 0x10], ecx
je 0x46348f
mov ecx, eax
test ecx, ecx
jne 0x4633cc
push 0
call fcn.004ad6ed
add esp, 4
mov edx, dword [esi + 0x48]
mov ecx, dword [0x5341f0]
sub eax, edx
cmp eax, ecx
sbb edx, edx
inc edx
mov dword [esp + 0x2c], edx
je 0x46348f
push 0
call fcn.004ad6ed
lea edx, [esi + 0x10]
add esp, 4
test edx, edx
mov dword [esi + 0x48], eax
je 0x46348f
mov eax, dword [0x534124]
test eax, eax
je 0x46344b
mov eax, dword [edx]
test eax, eax
je 0x46348f
mov ecx, eax
and ecx, 0xffff
cmp ecx, 0xa8c0
je 0x46348f
mov ecx, eax
and ecx, 0xf0ac
cmp ecx, 0x8ac
je 0x46348f
mov ecx, eax
and ecx, 0xff
cmp ecx, 0xa
je 0x46348f
cmp ecx, 0x7f
je 0x46348f
cmp eax, dword [0x513e2c]
je 0x46348f
mov eax, dword [esi + 0xc]
xor ecx, ecx
mov cx, word [esi + 0x14]
push 0
push 1
push eax
push ecx
push edx
mov ecx, 0x512990
call fcn.00461ae0
test eax, eax
je 0x46348f
mov eax, dword [esp + 0x14]
mov edx, dword [esp + 0x24]
inc edi
cmp eax, 3
mov dword [esp + edx + 0x38], edi
jne 0x463482
mov eax, dword [esp + 0x18]
mov dword [esi + 0x4c], eax
mov eax, dword [0x534144]
test eax, eax
jne 0x463674
mov esi, dword [esi + 4]
test esi, esi
jne 0x463392
mov eax, dword [0x513e3c]
test eax, eax
je 0x4635c9
mov ecx, dword [esp + 0x24]
mov eax, dword [esp + ecx + 0x38]
test eax, eax
je 0x4634d2
mov eax, dword [esp + 0xa4]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
sub edx, dword [eax + ecx*4 + 0x1458]
cmp edx, 0x1e
jb 0x4635c9
mov eax, dword [esp + 0x14]
cmp eax, 2
jne 0x463516
push 1
mov ecx, 0x511678
call fcn.00419f00
jmp 0x4635c9
sub edi, esi
imul edi, dword [0x5341c8]
mov ebp, 0x511dbc
mov eax, edi
jmp 0x46324e
sub edi, esi
imul edi, dword [0x5341c8]
mov ebp, 0x511998
mov eax, edi
jmp 0x46324e
cmp eax, 1
jne 0x4635c9
mov eax, dword [ebp + 0x14]
test eax, eax
jne 0x4635c9
push 1
mov ecx, 0x511678
call fcn.00419f00
jmp 0x4635c9
jle 0x4635c9
mov edx, dword [esp + 0xa4]
mov eax, dword [edx + 0x10]
xor esi, esi
neg eax
sbb eax, eax
mov dword [esp + 0x10], eax
je 0x4635c9
mov ebp, dword [esp + 0x14]
mov ebx, edx
add ebx, 4
lea eax, [esp + 0x34]
push eax
lea ecx, [esp + 0xa0]
push ecx
lea edx, [esp + 0x18]
push edx
mov ecx, ebx
call fcn.004be0d6
mov eax, dword [esp + 0x34]
cmp dword [eax + 0x4b8], 2
je 0x4635b1
cmp dword [eax + 0x488], ebp
jne 0x4635b1
mov ecx, dword [eax + 0x4b0]
test ecx, ecx
jne 0x4635a3
mov ecx, dword [eax + 0x18]
test ecx, ecx
je 0x4635a3
test edi, edi
jne 0x4635b1
test esi, esi
je 0x4635af
mov ecx, dword [eax + 0x20]
cmp ecx, dword [esi + 0x20]
jbe 0x4635b1
mov esi, eax
mov eax, dword [esp + 0x10]
test eax, eax
jne 0x463560
test esi, esi
je 0x4635c9
mov edx, dword [esi]
push 0x3f06
mov ecx, esi
call dword [edx + 0x38]
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + eax + 0x40]
cmp ecx, dword [esp + eax + 0x70]
jle 0x463655
mov edi, dword [esp + 0xa4]
mov eax, dword [edi + 0x10]
xor esi, esi
neg eax
sbb eax, eax
mov dword [esp + 0x10], eax
je 0x463655
mov ebx, dword [esp + 0x14]
add edi, 4
mov ebp, 2
lea ecx, [ecx]
lea edx, [esp + 0x28]
push edx
lea eax, [esp + 0x9c]
push eax
lea ecx, [esp + 0x18]
push ecx
mov ecx, edi
call fcn.004be0d6
mov eax, dword [esp + 0x28]
cmp dword [eax + 0x4b8], ebp
jne 0x46363b
cmp dword [eax + 0x488], ebx
jne 0x46363b
test esi, esi
je 0x463639
mov edx, dword [eax + 0x20]
cmp edx, dword [esi + 0x20]
jbe 0x46363b
mov esi, eax
mov eax, dword [esp + 0x10]
test eax, eax
jne 0x463600
test esi, esi
je 0x463659
mov eax, dword [esi]
push 0x3f06
mov ecx, esi
call dword [eax + 0x38]
jmp 0x463659
mov ebx, dword [esp + 0x14]
dec ebx
cmp ebx, 1
mov dword [esp + 0x14], ebx
jge 0x4631a6
pop edi
pop ebx
pop esi
pop ebp
add esp, 0x90
ret 4
mov eax, dword [esp + 0x20]
mov dword [0x513e44], eax
mov dword [0x511744], eax
pop edi
pop ebx
pop esi
pop ebp
add esp, 0x90
ret 4