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

Disassembly:
push 0xffffffffffffffff
push 0x77e793
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x148
push ebx
push ebp
push esi
mov esi, ecx
push edi
mov dword [esp + 0x18], esi
call fcn.00620f70
mov edi, dword [esi + 0x3fc]
add esi, 0x3f8
cmp edi, dword [esi + 8]
jbe 0x622280
call fcn.0074ca9e
mov ebp, dword [0x794270]
mov ebx, edi
mov edi, dword [esi + 8]
cmp dword [esi + 4], edi
jbe 0x622295
call fcn.0074ca9e
cmp esi, esi
je 0x62229e
call fcn.0074ca9e
cmp ebx, edi
je 0x622339
cmp ebx, dword [esi + 8]
jb 0x6222b0
call fcn.0074ca9e
mov edi, dword [ebx + 4]
test edi, edi
mov eax, dword [ebx]
mov dword [esp + 0x1c], eax
mov dword [esp + 0x20], edi
je 0x6222ea
push 1
lea esi, [edi + 0xc]
push esi
call ebp
test eax, eax
je 0x6222e1
lea ecx, [ecx]
push 1
call dword [0x794274]
push 1
push esi
call ebp
test eax, eax
jne 0x6222d0
add dword [edi + 4], 1
push 0
push esi
call ebp
cmp dword [esp + 0x1c], 0
mov dword [esp + 0x160], 0
je 0x622307
mov ecx, dword [esp + 0x1c]
push 4
call fcn.004479e0
test edi, edi
mov dword [esp + 0x160], 0xffffffff
je 0x62231d
mov ecx, edi
call fcn.00435470
mov esi, dword [esp + 0x18]
add esi, 0x3f8
cmp ebx, dword [esi + 8]
jb 0x622331
call fcn.0074ca9e
add ebx, 8
jmp 0x622288
mov ebx, dword [esi + 8]
cmp dword [esi + 4], ebx
jbe 0x622346
call fcn.0074ca9e
mov edi, dword [esi + 4]
cmp edi, dword [esi + 8]
jbe 0x622353
call fcn.0074ca9e
push ebx
push esi
push edi
push esi
lea ecx, [esp + 0x2c]
push ecx
mov ecx, esi
call fcn.00609760
mov edi, dword [esp + 0x18]
push 0x7f
lea edx, [esp + 0x5d]
push 0
push edx
mov dword [edi + 0x3e0], 0
mov byte [esp + 0x64], 0
call fcn.0074d440
push 0x7f
lea eax, [esp + 0xe9]
push 0
push eax
mov byte [esp + 0xf0], 0
call fcn.0074d440
mov esi, dword [esp + 0x180]
movzx eax, byte [esi + 0x28]
movzx ecx, byte [esi + 0x2a]
movzx edx, byte [esi + 0x29]
add esp, 0x18
push 0
push 0
push 0
push eax
push ecx
push 0
push edx
push eax
push ecx
push 0
call fcn.004e2020
add esp, 0x14
push eax
push str.data_character_player_model__splayer_01d__01d__02d__03d.tjm
lea eax, [esp + 0x74]
push 0x80
push eax
call fcn.0067ad00
add esp, 0x24
push 0
push 0x7958c8
push 0x7958c8
lea ecx, [esp + 0x64]
push ecx
push 0
mov ecx, edi
call fcn.00621030
mov ecx, dword [0x9922cc]
mov ebx, 5
mov dword [esp + 0x14], ebx
call fcn.0041e2d0
add eax, 0x355
test dword [esi + 0x31], 0x4000
je 0x622464
mov edx, dword [eax + 8]
mov ebx, 6
push edx
mov dword [esp + 0x18], ebx
call fcn.004e1a40
add esp, 4
push eax
mov ecx, 0xaae4cc
call fcn.00422100
test eax, eax
je 0x622471
mov eax, dword [eax + 0x184]
test eax, eax
jbe 0x622471
mov cl, byte [esi + 0x28]
cmp cl, 1
jne 0x622457
push eax
jmp 0x622466
cmp cl, 2
jne 0x622471
add eax, 0x3e8
push eax
jmp 0x622466
push 0
push 6
push 2
mov ecx, edi
call fcn.006210d0
test ebx, ebx
jle 0x6225fa
lea eax, [esi + 0x37]
mov edi, 1
mov dword [esp + 0x2c], eax
jmp 0x622490
test dword [esi + 0x31], 0x4000
je 0x622536
lea ecx, [edi - 1]
cmp ecx, 2
je 0x622536
movsx ebp, word [esi + 0x39]
movzx eax, byte [esi + 0x28]
movzx ecx, byte [esi + 0x2a]
movzx edx, byte [esi + 0x29]
movsx ebx, word [esi + 0x3b]
push ebp
push edi
push eax
push ecx
push ebp
push edx
push eax
push ecx
push edi
call fcn.004e2020
add esp, 0x14
push eax
push str.data_character_player_model__splayer_01d__01d__02d__03d.tjm
lea eax, [esp + 0x70]
push 0x80
push eax
call fcn.0067ad00
add esp, 4
mov ecx, esp
lea eax, [esp + 0x74]
lea edx, [eax + 1]
mov dword [esp + 0x2c], esp
mov dword [ecx + 0x18], 0xf
mov dword [ecx + 0x14], 0
mov byte [ecx + 4], 0
mov dword [esp + 0x2c], edx
lea esp, [esp]
mov dl, byte [eax]
add eax, 1
test dl, dl
jne 0x622510
sub eax, dword [esp + 0x2c]
push eax
lea eax, [esp + 0x78]
push eax
call fcn.00402660
mov ecx, 0xab31e0
call fcn.0050cff0
test eax, eax
jne 0x622541
mov eax, dword [esp + 0x2c]
movsx ebx, word [eax]
movsx ebp, word [eax - 2]
cmp ebp, 0xffffffff
je 0x6225df
cmp ebx, 0xffffffff
je 0x6225df
movzx eax, byte [esi + 0x28]
movzx ecx, byte [esi + 0x2a]
movzx edx, byte [esi + 0x29]
push ebx
push ebp
push edi
push eax
push ecx
push ebp
push edx
push eax
push ecx
push edi
call fcn.004e2020
add esp, 0x14
push eax
push str.data_character_player_model__splayer_01d__01d__02d__03d__02d.png
lea eax, [esp + 0xf4]
push 0x80
push eax
call fcn.0067ad00
movzx eax, byte [esi + 0x28]
movzx ecx, byte [esi + 0x2a]
movzx edx, byte [esi + 0x29]
add esp, 0x24
push ebp
push edi
push eax
push ecx
push ebp
push edx
push eax
push ecx
push edi
call fcn.004e2020
add esp, 0x14
push eax
push str.data_character_player_model__splayer_01d__01d__02d__03d.tjm
lea eax, [esp + 0x70]
push 0x80
push eax
call fcn.0067ad00
add esp, 0x20
push 0
push 0x7958c8
lea ecx, [esp + 0xe0]
push ecx
mov ecx, dword [esp + 0x24]
lea edx, [esp + 0x64]
push edx
push edi
call fcn.00621030
add dword [esp + 0x2c], 4
add edi, 1
lea eax, [edi - 1]
cmp eax, dword [esp + 0x14]
jl 0x622490
mov ebp, dword [0x794270]
mov ecx, dword [esp + 0x18]
push 0
push 9
push 0xd
call fcn.006210d0
mov edi, 0x2e
xor esi, esi
mov dword [esp + 0x14], edi
mov ecx, dword [0x9922cc]
call fcn.0041e2d0
mov edx, dword [eax + edi + 0x87]
lea eax, [eax + edi + 0x75]
mov edi, dword [eax + 0xe]
xor ecx, ecx
add eax, 0x16
mov dword [esp + 0x20], edx
mov dword [esp + 0x2c], eax
mov eax, 1
shl eax, cl
cdq
and edx, dword [esp + 0x20]
and eax, edi
or eax, edx
je 0x62268c
lea eax, [ecx - 0x1f]
cmp eax, 5
ja 0x622687
mov edx, dword [esp + 0x2c]
movzx eax, word [edx]
cmp ax, 1
jle 0x622687
movsx edx, ax
mov eax, 0x51eb851f
imul edx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
movzx eax, ax
movsx eax, ax
cdq
mov ebx, 0xa
idiv ebx
lea esi, [esi + edx + 1]
add dword [esp + 0x2c], 2
add ecx, 1
cmp ecx, 0x40
jl 0x62263a
mov edi, dword [esp + 0x14]
add edi, 0x2e
cmp edi, 0x284
mov dword [esp + 0x14], edi
jle 0x622614
movsx ecx, si
push ecx
call fcn.004e1e00
mov ecx, dword [0x996e0c]
movsx eax, al
add esp, 4
add eax, 0x54b398
push eax
lea edx, [esp + 0x28]
push edx
mov dword [esp + 0x1c], eax
call fcn.004499b0
cmp dword [esp + 0x24], 0
mov dword [esp + 0x160], 1
jne 0x6228f3
push 0x110
call fcn.0074caae
add esp, 4
mov dword [esp + 0x10], eax
test eax, eax
mov byte [esp + 0x160], 2
je 0x622710
mov ecx, eax
call fcn.004494d0
jmp 0x622712
xor eax, eax
mov byte [esp + 0x10], 0
mov ecx, dword [esp + 0x10]
push ecx
push eax
lea ecx, [esp + 0x28]
mov byte [esp + 0x168], 1
mov dword [esp + 0x24], eax
call fcn.00443af0
mov edi, dword [esp + 0x20]
test edi, edi
mov edx, dword [esp + 0x1c]
mov byte [esp + 0x160], 3
mov dword [esp + 0x24], edx
je 0x622776
push 1
lea esi, [edi + 0xc]
push esi
call ebp
test eax, eax
je 0x62276d
mov ebx, dword [0x794274]
lea esp, [esp]
push 1
call ebx
push 1
push esi
call ebp
test eax, eax
jne 0x622760
add dword [edi + 4], 1
push 0
push esi
call ebp
mov ebx, dword [esp + 0x28]
test ebx, ebx
je 0x6227f7
push 1
lea esi, [ebx + 0xc]
push esi
call ebp
test eax, eax
je 0x6227a1
mov edi, edi
push 1
call dword [0x794274]
push 1
push esi
call ebp
test eax, eax
jne 0x622790
add dword [ebx + 4], 0xffffffff
cmp dword [ebx + 4], 0
push 0
push esi
je 0x6227b2
call ebp
jmp 0x6227f7
call ebp
mov eax, dword [ebx]
mov edx, dword [eax + 4]
mov ecx, ebx
call edx
push 1
push esi
call ebp
test eax, eax
je 0x6227d7
push 1
call dword [0x794274]
push 1
push esi
call ebp
test eax, eax
jne 0x6227c6
add dword [ebx + 8], 0xffffffff
mov eax, dword [ebx + 8]
push 0
push esi
mov dword [esp + 0x18], eax
call ebp
cmp dword [esp + 0x10], 0
jne 0x6227f7
mov edx, dword [ebx]
mov eax, dword [edx + 8]
mov ecx, ebx
call eax
test edi, edi
mov dword [esp + 0x28], edi
mov byte [esp + 0x160], 1
je 0x622878
push 1
lea esi, [edi + 0xc]
push esi
call ebp
test eax, eax
mov ebx, dword [0x794274]
je 0x62282d
lea esp, [esp]
push 1
call ebx
push 1
push esi
call ebp
test eax, eax
jne 0x622820
add dword [edi + 4], 0xffffffff
cmp dword [edi + 4], 0
push 0
push esi
je 0x62283e
call ebp
jmp 0x62287e
call ebp
mov edx, dword [edi]
mov eax, dword [edx + 4]
mov ecx, edi
call eax
push 1
push esi
call ebp
test eax, eax
je 0x62285f
push 1
call ebx
push 1
push esi
call ebp
test eax, eax
jne 0x622852
add dword [edi + 8], 0xffffffff
mov ebx, dword [edi + 8]
push 0
push esi
call ebp
test ebx, ebx
jne 0x622878
mov edx, dword [edi]
mov eax, dword [edx + 8]
mov ecx, edi
call eax
mov ebx, dword [0x794274]
mov ecx, dword [esp + 0x14]
push ecx
mov ecx, dword [esp + 0x28]
call fcn.00447860
mov edx, dword [esp + 0x24]
sub esp, 8
mov eax, esp
mov dword [eax], edx
mov ecx, dword [esp + 0x30]
mov dword [eax + 4], ecx
mov eax, dword [esp + 0x30]
test eax, eax
mov dword [esp + 0x18], esp
je 0x6228ce
lea esi, [eax + 0xc]
push 1
push esi
mov edi, eax
call ebp
test eax, eax
je 0x6228c5
push 1
call ebx
push 1
push esi
call ebp
test eax, eax
jne 0x6228b8
add dword [edi + 4], 1
push 0
push esi
call ebp
mov ecx, dword [esp + 0x2c]
mov byte [esp + 0x168], 4
call fcn.00447840
mov byte [esp + 0x168], 1
mov ecx, dword [0x996e0c]
push eax
call fcn.0044b3e0
mov ebx, dword [esp + 0x18]
push 0x240
call fcn.0074caae
mov ecx, eax
add esp, 4
mov dword [esp + 0x10], ecx
test ecx, ecx
mov byte [esp + 0x160], 5
je 0x622977
fldz
mov edx, dword [esp + 0x24]
push 0
push ecx
fstp dword [esp]
push 1
sub esp, 8
mov eax, esp
mov dword [eax], edx
mov edx, dword [esp + 0x3c]
mov dword [eax + 4], edx
mov esi, dword [esp + 0x3c]
test esi, esi
mov dword [esp + 0x28], esp
je 0x622970
mov edi, esi
push 1
add esi, 0xc
push esi
call ebp
test eax, eax
je 0x622963
mov ebx, dword [0x794274]
push 1
call ebx
push 1
push esi
call ebp
test eax, eax
jne 0x622952
mov ebx, dword [esp + 0x2c]
add dword [edi + 4], 1
push 0
push esi
call ebp
mov ecx, dword [esp + 0x24]
call fcn.00449660
jmp 0x622979
xor eax, eax
mov byte [esp + 0x10], 0
mov ecx, dword [esp + 0x10]
push ecx
push eax
lea ecx, [esp + 0x28]
mov byte [esp + 0x168], 1
mov dword [esp + 0x24], eax
call fcn.0043c530
mov esi, dword [esp + 0x1c]
mov ecx, esi
mov byte [esp + 0x160], 6
call fcn.0044a440
test al, al
je 0x622a50
test esi, esi
je 0x622a40
fld dword [0x979358]
lea edx, [esp + 0x2c]
fstp dword [esp + 0x38]
push edx
fld dword [0x97935c]
lea eax, [esp + 0x4c]
fstp dword [esp + 0x40]
push eax
fld dword [0x979360]
lea ecx, [esp + 0x40]
fstp dword [esp + 0x48]
push ecx
fld dword [0x979364]
mov ecx, esi
fstp dword [esp + 0x50]
fld dword [0x979308]
fstp dword [esp + 0x54]
fld dword [0x97930c]
fstp dword [esp + 0x58]
fld dword [0x979310]
fstp dword [esp + 0x5c]
fld dword [0x979314]
fstp dword [esp + 0x60]
fld dword [0x9792c4]
fstp dword [esp + 0x38]
fld dword [0x9792c8]
fstp dword [esp + 0x3c]
fld dword [0x9792cc]
fstp dword [esp + 0x40]
call fcn.00443530
lea edx, [esp + 0x1c]
push edx
lea ecx, [ebx + 0x3f8]
call fcn.005f0960
mov ecx, dword [0x9922cc]
call fcn.0041e2d0
add eax, 0x2cb
mov dword [ebx + 0x3f4], 0
mov ecx, dword [eax]
or ecx, dword [eax + 4]
je 0x622ad1
mov edx, dword [eax + 8]
push edx
call fcn.004e1a40
add esp, 4
push eax
mov ecx, 0xaae4cc
call fcn.00422100
test eax, eax
je 0x622ad1
mov eax, dword [eax + 0xc]
cmp eax, 0xb
jne 0x622aa0
mov dword [ebx + 0x3f4], 1
jmp 0x622ad1
cmp eax, 0xe
jne 0x622ab1
mov dword [ebx + 0x3f4], 2
jmp 0x622ad1
cmp eax, 0xc
jne 0x622ac2
mov dword [ebx + 0x3f4], 3
jmp 0x622ad1
cmp eax, 0xd
jne 0x622ad1
mov dword [ebx + 0x3f4], 4
push 1
push 0
call fcn.005af5f0
add esp, 8
cmp eax, 1
jne 0x622aed
mov eax, dword [ebx + 0x3f4]
push 0
push eax
jmp 0x622af6
mov ecx, dword [ebx + 0x3f4]
push 2
push ecx
call fcn.0047a4c0
add esp, 8
mov dword [ebx + 0x3ec], eax
xor edi, edi
jmp 0x622b10
mov esi, dword [esp + 0x18]
mov edx, dword [esi + 0x3ec]
lea eax, [esp + 0x10]
push eax
lea ecx, [esp + 0x30]
push ecx
mov ecx, esi
mov dword [esp + 0x1c], edx
mov dword [esp + 0x18], edi
call fcn.00402df0
mov ebx, dword [esi + 8]
lea eax, [esi + 4]
mov esi, dword [esp + 0x2c]
test esi, esi
je 0x622b4c
mov eax, dword [esp + 0x18]
add eax, 4
cmp esi, eax
je 0x622b51
call fcn.0074ca9e
cmp dword [esp + 0x30], ebx
je 0x622b8b
test esi, esi
jne 0x622b60
call fcn.0074ca9e
mov edx, dword [esp + 0x30]
cmp edx, dword [esi + 4]
jne 0x622b6e
call fcn.0074ca9e
mov eax, dword [esp + 0x30]
mov ecx, dword [eax + 0xc]
test ecx, ecx
je 0x622b8b
fld1
mov edx, dword [esp + 0x14]
push ecx
fstp dword [esp]
push edx
call fcn.0060b7d0
jmp 0x622b99
push edi
push 0x8bded4
call fcn.006780f0
add esp, 8
add edi, 1
cmp edi, 6
jl 0x622b10
mov edi, dword [esp + 0x20]
test edi, edi
mov byte [esp + 0x160], 1
je 0x622c2f
push 1
lea esi, [edi + 0xc]
push esi
call ebp
test eax, eax
mov ebx, dword [0x794274]
je 0x622bd4
push 1
call ebx
push 1
push esi
call ebp
test eax, eax
jne 0x622bc7
add dword [edi + 4], 0xffffffff
cmp dword [edi + 4], 0
push 0
push esi
je 0x622be5
call ebp
jmp 0x622c35
call ebp
mov eax, dword [edi]
mov edx, dword [eax + 4]
mov ecx, edi
call edx
push 1
push esi
call ebp
test eax, eax
je 0x622c0d
lea esp, [esp]
push 1
call ebx
push 1
push esi
call ebp
test eax, eax
jne 0x622c00
add dword [edi + 8], 0xffffffff
mov eax, dword [edi + 8]
push 0
push esi
mov dword [esp + 0x18], eax
call ebp
cmp dword [esp + 0x10], 0
jne 0x622c35
mov edx, dword [edi]
mov eax, dword [edx + 8]
mov ecx, edi
call eax
jmp 0x622c35
mov ebx, dword [0x794274]
mov esi, dword [esp + 0x28]
test esi, esi
mov dword [esp + 0x160], 0xffffffff
je 0x622caa
mov edi, esi
push 1
add esi, 0xc
push esi
call ebp
test eax, eax
je 0x622c63
push 1
call ebx
push 1
push esi
call ebp
test eax, eax
jne 0x622c56
add dword [edi + 4], 0xffffffff
push 0
push esi
je 0x622c70
call ebp
jmp 0x622caa
call ebp
mov edx, dword [edi]
mov eax, dword [edx + 4]
mov ecx, edi
call eax
push 1
push esi
call ebp
test eax, eax
je 0x622c91
push 1
call ebx
push 1
push esi
call ebp
test eax, eax
jne 0x622c84
add dword [edi + 8], 0xffffffff
mov ebx, dword [edi + 8]
push 0
push esi
call ebp
test ebx, ebx
jne 0x622caa
mov edx, dword [edi]
mov eax, dword [edx + 8]
mov ecx, edi
call eax
mov ecx, dword [esp + 0x158]
pop edi
pop esi
pop ebp
mov al, 1
mov dword fs:[0], ecx
pop ebx
add esp, 0x154
ret 4