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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x5c
push ebx
push esi
mov esi, dword [ebp + 0x10]
push edi
xor edi, edi
mov byte [ebp - 2], 0
mov byte [ebp - 3], 0
mov byte [ebp - 4], 0
mov dword [ebp - 0xc], edi
test esi, esi
je 0x48533b
cmp dword [esi], 0xc0dedbad
jne 0x48533b
mov edx, dword [ebp + 8]
cmp byte [edx + 0x100], 0
je 0x4845e2
mov edi, 0x2a
push esi
mov dword [ebp - 0xc], edi
call fcn.00406830
push 0
push edi
push esi
call fcn.00484050
push 0xf
push esi
call fcn.00483ee0
mov edx, dword [ebp + 8]
add esp, 0x18
push 1
push edx
mov byte [ebp + 0x13], 0
xor ebx, ebx
call fcn.00484560
add esp, 8
test al, al
je 0x484600
push edx
call fcn.00485b70
add esp, 4
mov eax, dword [esi + 0x34]
cmp eax, 2
jle 0x484616
cmp eax, 0xf
jge 0x484616
cmp dword [esi + 0x18], ebx
je case.default.0x484652
cmp dword [esi + 0x18], ebx
je 0x484646
cmp eax, 2
jl 0x484646
cmp eax, 0xf
jge 0x484646
push 0
lea eax, [ebp - 0xc]
push eax
lea eax, [ebp + 0x13]
push eax
push dword [ebp + 0xc]
push esi
call fcn.00484400
mov edi, dword [ebp - 0xc]
add esp, 0x14
test al, al
jne 0x4851f1
mov eax, dword [esi + 0x34]
cmp eax, 0x10
ja case.default.0x484652
jmp dword [eax*4 + 0x485348]
push esi
call fcn.004a0550
mov edi, eax
add esp, 4
mov dword [ebp - 0xc], edi
test edi, edi
jne case.0x484652.1
push 2
push esi
call fcn.00483ee0
push 1
lea eax, [ebp - 0x3c]
push esi
push eax
call fcn.004a1b20
add esp, 0x14
or ebx, 0xffffffff
movups xmm0, xmmword [eax]
mov eax, dword [ebp + 0xc]
movups xmmword [eax], xmm0
jmp case.0x484652.1
push esi
call fcn.00483260
mov edi, eax
add esp, 4
mov dword [ebp - 0xc], edi
test edi, edi
jne case.0x484652.1
push 2
lea eax, [ebp - 0x4c]
push esi
push eax
call fcn.004a1b20
add esp, 0xc
movups xmm0, xmmword [eax]
mov eax, dword [ebp + 0xc]
movups xmmword [eax], xmm0
mov eax, dword [esi + 0x1e0]
test eax, eax
je 0x4846dc
push 0xa
push edi
push eax
push esi
call fcn.00482e30
add esp, 0x10
mov eax, dword [esi + 0x1e4]
test eax, eax
je 0x4846f4
push 2
push 0
push eax
push esi
call fcn.00482e30
add esp, 0x10
lea eax, [ebp - 1]
push eax
lea eax, [ebp - 6]
push eax
push esi
call fcn.0048ccc0
mov edi, eax
add esp, 0xc
mov dword [ebp - 0xc], edi
cmp edi, 0x59
jne 0x48473f
push 1
push esi
call fcn.00483ee0
mov edi, dword [ebp + 8]
lea eax, [esi + 0x1c]
push eax
push esi
push dword [edi + 0x28]
lea eax, [edi + 0x24]
push eax
call fcn.00497db0
push esi
push edi
call fcn.00486330
add esp, 0x20
xor edi, edi
mov dword [ebp - 0xc], edi
jmp case.0x484652.1
cmp byte [esi + 0xd98], bl
je 0x48475d
push str.Transfer_was_pending__now_try_another
push esi
call fcn.00491e70
push dword [esi + 0x7c]
call fcn.00485b70
add esp, 0xc
test edi, edi
jne case.0x484652.1
push 3
lea eax, [ebp - 0x5c]
push esi
push eax
call fcn.004a1b20
add esp, 0xc
movups xmm0, xmmword [eax]
mov eax, dword [ebp + 0xc]
movups xmmword [eax], xmm0
cmp byte [ebp - 6], bl
je 0x484789
push 3
jmp 0x4851a5
or ebx, 0xffffffff
cmp byte [ebp - 1], 0
je 0x484799
push 6
jmp 0x4851a5
push 4
jmp 0x4851a5
mov eax, dword [esi + 0x18]
mov dword [ebp - 0x10], ebx
cmp byte [eax + 0x1a8], bl
je 0x4847b3
mov ebx, dword [eax + 0x78]
jmp 0x4847c3
cmp byte [eax + 0x1b1], bl
je 0x4847c0
mov ebx, dword [eax + 0x48]
jmp 0x4847c3
mov ebx, dword [eax + 0x30]
push dword [eax + 0x2fc]
push ebx
push esi
call fcn.004984f0
add esp, 0xc
mov dword [ebp - 0x10], eax
test eax, eax
je 0x484800
push ebx
push 0x54533c
xor edi, edi
mov dword [esi + 0x9ac], eax
push esi
mov byte [esi + 0x9c0], 1
mov dword [ebp - 0xc], edi
call fcn.00491e70
add esp, 0xc
cmp dword [ebp - 0x10], edi
jne 0x484812
lea eax, [ebp - 0x10]
push eax
push esi
call fcn.00498f20
mov edi, eax
add esp, 8
mov dword [ebp - 0xc], edi
push esi
push dword [ebp + 8]
call fcn.00485fe0
mov ebx, eax
add esp, 8
test ebx, ebx
jne 0x4852ca
cmp dword [ebp - 0x10], eax
je 0x48484a
lea eax, [ebp - 1]
push eax
push esi
call fcn.00498b80
mov edi, eax
add esp, 8
mov dword [ebp - 0xc], edi
test edi, edi
je 0x484789
mov dword [esi + 0x18], ebx
test edi, edi
je case.0x484652.1
mov byte [ebp + 0x13], 1
jmp case.0x484652.1
lea eax, [ebp - 2]
push eax
push esi
call fcn.0049a3e0
mov edi, eax
add esp, 8
mov eax, dword [esi + 0x18]
mov dword [ebp - 0xc], edi
cmp byte [eax + 0x1ac], bl
je 0x484898
xor edi, edi
or ebx, 0xffffffff
push edi
push edi
push esi
mov dword [ebp - 0xc], edi
call fcn.00484050
push 2
push esi
call fcn.00483ee0
add esp, 0x14
jmp case.0x484652.1
test edi, edi
jne 0x484852
or ebx, 0xffffffff
push 6
jmp 0x4851a5
lea eax, [ebp - 1]
push eax
push 0
push 0
push esi
call fcn.004915e0
add esp, 0x10
mov edi, eax
mov dword [ebp - 0xc], edi
cmp byte [ebp - 1], bl
je 0x4848cf
test edi, edi
jne 0x4848d7
or ebx, 0xffffffff
push 6
jmp 0x4851a5
test edi, edi
je case.0x484652.1
push esi
call fcn.00406830
push 1
push edi
push esi
call fcn.00484050
add esp, 0x10
mov byte [ebp + 0x13], 1
jmp case.0x484652.1
cmp byte [esi + 0xd9f], bl
je 0x484908
push esi
call fcn.00485d10
mov edi, eax
add esp, 4
mov dword [ebp - 0xc], edi
test edi, edi
jne 0x4848d7
mov eax, dword [esi + 0x18]
cmp byte [eax + 0x1af], bl
je 0x48492a
push 8
push esi
call fcn.00483ee0
add esp, 8
or ebx, 0xffffffff
jmp case.0x484652.1
lea eax, [ebp - 2]
push eax
push esi
call fcn.00485bc0
mov edi, eax
add esp, 8
mov dword [ebp - 0xc], edi
test edi, edi
jne 0x4848d7
cmp byte [ebp - 2], bl
jne 0x484917
push 7
push esi
call fcn.00483ee0
add esp, 8
or ebx, 0xffffffff
jmp case.0x484652.1
lea eax, [ebp - 2]
push eax
push esi
call fcn.00485c40
mov edi, eax
add esp, 8
mov dword [ebp - 0xc], edi
test edi, edi
jne 0x4848d7
cmp byte [ebp - 2], bl
je case.0x484652.1
push 8
push esi
call fcn.00483ee0
add esp, 8
or ebx, 0xffffffff
jmp case.0x484652.1
cmp dword [esi + 0x1bc], ebx
je 0x484a05
push 1
push esi
call fcn.004832a0
push dword [esi + 0xe5c]
lea eax, [esi + 0xe2c]
push dword [esi + 0xe24]
push eax
lea eax, [esi + 0xdf4]
push eax
push dword [esi + 0x1c0]
mov eax, dword [esi + 0x1bc]
call eax
push 0
push esi
mov edi, eax
call fcn.004832a0
add esp, 0x24
test edi, edi
je 0x484a05
push str.operation_aborted_by_pre_request_callback
push esi
call fcn.00491db0
mov edi, 0x2a
push esi
mov dword [ebp - 0xc], edi
call fcn.00406830
push 0
push edi
push esi
call fcn.00484050
add esp, 0x18
mov byte [ebp + 0x13], 1
jmp case.0x484652.1
cmp byte [esi + 0x6a5], 1
jne 0x484a30
push 0
push dword [esi + 0x18]
call fcn.00493070
push 0xe
push esi
call fcn.00483ee0
xor edi, edi
add esp, 0x10
mov dword [ebp - 0xc], edi
or ebx, 0xffffffff
jmp case.0x484652.1
lea eax, [ebp - 3]
push eax
push esi
call fcn.00484000
mov edi, eax
add esp, 8
mov dword [ebp - 0xc], edi
test edi, edi
jne 0x484ad2
cmp byte [ebp - 3], bl
jne 0x484aa1
cmp byte [esi + 0xd92], bl
je 0x484a8e
mov eax, dword [esi + 0xda8]
mov al, byte [eax + 0x20]
cmp al, 7
je 0x484a68
cmp al, 5
jne 0x484a8e
push 0
push 0
push esi
call fcn.00484050
mov eax, dword [esi + 0x18]
neg eax
sbb eax, eax
add eax, 0xf
push eax
push esi
call fcn.00483ee0
add esp, 0x14
or ebx, 0xffffffff
jmp case.0x484652.1
push 9
push esi
call fcn.00483ee0
add esp, 8
or ebx, 0xffffffff
jmp case.0x484652.1
mov eax, dword [esi + 0x18]
cmp byte [eax + 0x1b5], bl
je 0x484abf
push 0xa
push esi
call fcn.00483ee0
add esp, 8
or ebx, 0xffffffff
jmp case.0x484652.1
push 0xb
push esi
call fcn.00483ee0
add esp, 8
or ebx, 0xffffffff
jmp case.0x484652.1
cmp edi, 0x37
jne 0x484b85
mov eax, dword [esi + 0x18]
cmp byte [eax + 0x1af], bl
je 0x484b85
lea eax, [ebp - 0x10]
mov dword [ebp - 0x10], ebx
push eax
push esi
call fcn.004a0c60
add esp, 8
test eax, eax
je 0x484b07
mov edi, eax
mov byte [ebp + 0x13], 1
mov dword [ebp - 0xc], edi
push esi
call fcn.00406830
push 0
push edi
push esi
call fcn.00484050
mov ecx, dword [ebp - 0x10]
add esp, 0x10
test ecx, ecx
je 0x484b72
test eax, eax
je 0x484b3d
cmp eax, 0x37
je 0x484b3d
mov edi, eax
push ecx
mov dword [ebp - 0xc], edi
call dword [0x579340]
add esp, 4
jmp case.0x484652.1
push 2
push ecx
push esi
call fcn.0049ffa0
mov edi, eax
add esp, 0xc
test edi, edi
jne 0x484b5d
push 2
push esi
call fcn.00483ee0
add esp, 8
or ebx, 0xffffffff
mov ecx, dword [ebp - 0x10]
push ecx
mov dword [ebp - 0xc], edi
call dword [0x579340]
add esp, 4
jmp case.0x484652.1
push ecx
mov byte [ebp + 0x13], 1
call dword [0x579340]
add esp, 4
jmp case.0x484652.1
push esi
call fcn.00406830
add esp, 4
cmp dword [esi + 0x18], ebx
je 0x484b9f
push 0
push edi
push esi
call fcn.00484050
add esp, 0xc
mov byte [ebp + 0x13], 1
jmp case.0x484652.1
lea eax, [ebp - 3]
push eax
push esi
call fcn.00485c80
mov edi, eax
add esp, 8
mov dword [ebp - 0xc], edi
test edi, edi
jne 0x484bea
cmp byte [ebp - 3], bl
je case.0x484652.1
mov eax, dword [esi + 0x18]
xor ecx, ecx
cmp byte [eax + 0x1b5], cl
sete cl
add ecx, 0xa
push ecx
push esi
call fcn.00483ee0
add esp, 8
or ebx, 0xffffffff
jmp case.0x484652.1
push esi
call fcn.00406830
push 0
push edi
push esi
call fcn.00484050
add esp, 0x10
mov byte [ebp + 0x13], 1
jmp case.0x484652.1
lea eax, [ebp - 0x2c]
push eax
push esi
call fcn.00484020
mov edi, eax
add esp, 8
mov dword [ebp - 0xc], edi
test edi, edi
jne 0x484bea
mov ecx, dword [ebp - 0x2c]
test ecx, ecx
je case.0x484652.1
cmp ecx, 1
sete al
lea eax, [eax*2 + 9]
push eax
push esi
call fcn.00483ee0
add esp, 8
or ebx, 0xffffffff
jmp case.0x484652.1
mov eax, dword [esi + 0x18]
cmp byte [eax + 0x1bf], bl
je 0x484c5b
push dword [ebp + 8]
call fcn.00485b70
add esp, 4
mov eax, dword [esi + 0x18]
cmp dword [eax + 0x1e0], 0xffffffff
jne 0x484ca4
cmp dword [eax + 0x1e4], 0xffffffff
jne 0x484ca4
cmp byte [esi + 0xd92], bl
je 0x484c91
mov eax, dword [eax + 0x1c8]
test dword [eax + 0x4c], 0x1000
jne 0x484c91
mov eax, dword [esi + 0xda8]
mov byte [eax + 0x20], 7
push 0xe
push esi
call fcn.00483ee0
add esp, 8
or ebx, 0xffffffff
jmp case.0x484652.1
push 0xc
push esi
call fcn.00483ee0
add esp, 8
or ebx, 0xffffffff
jmp case.0x484652.1
push esi
call fcn.004a1ce0
add esp, 4
test eax, eax
je 0x484cce
mov edi, 0x2a
mov dword [ebp - 0xc], edi
jmp 0x484cee
mov ecx, dword [ebp + 0xc]
sub esp, 0x10
mov eax, esp
movups xmm0, xmmword [ecx]
push esi
movups xmmword [eax], xmm0
call fcn.004a2ed0
mov edi, eax
add esp, 0x14
mov dword [ebp - 0xc], edi
test edi, edi
je 0x484d24
mov ecx, dword [esi + 0x18]
mov eax, dword [ecx + 0x1c8]
test byte [eax + 0x4c], 2
jne 0x484d0d
cmp edi, 0x5c
je 0x484d0d
push 2
push ecx
call fcn.00493070
add esp, 8
push esi
call fcn.00406830
push 1
push edi
push esi
call fcn.00484050
add esp, 0x10
jmp case.0x484652.1
mov eax, dword [esi + 0x210]
xorps xmm0, xmm0
mov ecx, dword [esi + 0x214]
or eax, ecx
movlpd qword [ebp - 0x28], xmm0
je 0x484d86
mov edx, dword [ebp + 0xc]
sub esp, 0x10
mov eax, esp
sub esp, 0x10
movups xmm0, xmmword [edx]
mov edx, dword [esi + 0x210]
movups xmmword [eax], xmm0
mov eax, esp
movups xmm0, xmmword [esi + 0x7b8]
push ecx
push edx
push dword [esi + 0x7cc]
movups xmmword [eax], xmm0
push dword [esi + 0x7c8]
push dword [esi + 0x714]
push dword [esi + 0x710]
call fcn.004a1880
add esp, 0x38
mov dword [ebp - 0x14], edx
jmp 0x484d8f
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x28]
mov ecx, dword [esi + 0x21c]
xorps xmm0, xmm0
mov dword [ebp - 0x10], eax
mov eax, dword [esi + 0x218]
or eax, ecx
movlpd qword [ebp - 0x20], xmm0
je 0x484df3
mov edx, dword [ebp + 0xc]
sub esp, 0x10
mov eax, esp
sub esp, 0x10
movups xmm0, xmmword [edx]
mov edx, dword [esi + 0x218]
movups xmmword [eax], xmm0
mov eax, esp
movups xmm0, xmmword [esi + 0x7d0]
push ecx
push edx
push dword [esi + 0x7e4]
movups xmmword [eax], xmm0
push dword [esi + 0x7e0]
push dword [esi + 0x70c]
push dword [esi + 0x708]
call fcn.004a1880
add esp, 0x38
mov ecx, eax
jmp 0x484df9
mov edx, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x10]
or eax, dword [ebp - 0x14]
jne 0x484e2b
mov eax, ecx
or eax, edx
jne 0x484e2b
push 0xc
push esi
call fcn.00483ee0
mov ecx, dword [ebp + 0xc]
sub esp, 8
mov eax, esp
movups xmm0, xmmword [ecx]
push esi
movups xmmword [eax], xmm0
call fcn.004a1e70
add esp, 0x14
jmp case.0x484652.1
cmp dword [ebp - 0x14], edx
jl 0x484e4d
mov eax, dword [ebp - 0x10]
jg 0x484e39
cmp eax, ecx
jb 0x484e4d
push 0xb
push dword [ebp - 0x14]
push eax
push esi
call fcn.00482e30
add esp, 0x10
jmp case.0x484652.1
push 0xb
push edx
push ecx
push esi
call fcn.00482e30
add esp, 0x10
jmp case.0x484652.1
mov eax, dword [esi + 0x210]
xorps xmm0, xmm0
mov ecx, dword [esi + 0x214]
or eax, ecx
mov dword [ebp - 0x10], ebx
mov byte [ebp - 5], bl
movlpd qword [ebp - 0x28], xmm0
je 0x484ec7
mov edx, dword [ebp + 0xc]
sub esp, 0x10
mov eax, esp
sub esp, 0x10
movups xmm0, xmmword [edx]
mov edx, dword [esi + 0x210]
movups xmmword [eax], xmm0
mov eax, esp
movups xmm0, xmmword [esi + 0x7b8]
push ecx
push edx
push dword [esi + 0x7cc]
movups xmmword [eax], xmm0
push dword [esi + 0x7c8]
push dword [esi + 0x714]
push dword [esi + 0x710]
call fcn.004a1880
add esp, 0x38
mov dword [ebp - 0x18], edx
jmp 0x484ed0
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x28]
mov ecx, dword [esi + 0x21c]
xorps xmm0, xmm0
mov dword [ebp - 0x14], eax
mov eax, dword [esi + 0x218]
or eax, ecx
movlpd qword [ebp - 0x20], xmm0
je 0x484f37
mov edx, dword [ebp + 0xc]
sub esp, 0x10
mov eax, esp
sub esp, 0x10
movups xmm0, xmmword [edx]
mov edx, dword [esi + 0x218]
movups xmmword [eax], xmm0
mov eax, esp
movups xmm0, xmmword [esi + 0x7d0]
push ecx
push edx
push dword [esi + 0x7e4]
movups xmmword [eax], xmm0
push dword [esi + 0x7e0]
push dword [esi + 0x70c]
push dword [esi + 0x708]
call fcn.004a1880
add esp, 0x38
mov dword [ebp - 0x1c], eax
mov ecx, eax
jmp 0x484f40
mov edx, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x20]
mov dword [ebp - 0x1c], ecx
mov eax, dword [ebp - 0x14]
or eax, dword [ebp - 0x18]
mov dword [ebp - 0x24], edx
jne 0x485102
mov eax, ecx
or eax, edx
jne 0x485102
lea eax, [ebp - 4]
push eax
push esi
call fcn.004a0900
add esp, 8
mov edi, eax
mov dword [ebp - 0xc], edi
cmp byte [ebp - 4], bl
jne 0x484fb0
cmp edi, 0x38
je 0x484fb0
cmp edi, 0x5c
jne 0x484fe2
mov ecx, dword [esi + 0x18]
mov eax, dword [ecx + 0x1c8]
test byte [eax + 0x4c], 2
jne 0x484f99
cmp edi, 0x5c
je 0x484f99
push 2
push ecx
call fcn.00493070
add esp, 8
push esi
call fcn.00406830
push 1
push edi
push esi
call fcn.00484050
add esp, 0x10
jmp case.0x484652.1
lea eax, [ebp - 0x10]
push eax
push esi
call fcn.004a0c60
add esp, 8
test eax, eax
jne 0x484fd9
cmp dword [ebp - 0x10], ebx
setne al
mov byte [ebp - 5], al
test al, al
je 0x484fe2
xor edi, edi
mov byte [ebp - 4], 1
mov dword [ebp - 0xc], edi
jmp 0x484fef
test edi, edi
jne 0x484f7a
mov edi, eax
mov dword [ebp - 0xc], edi
test edi, edi
jne 0x484f7a
cmp byte [ebp - 4], bl
je 0x4850e2
push esi
call fcn.00406830
add esp, 4
cmp dword [esi + 0x110], ebx
jne 0x485077
cmp byte [ebp - 5], bl
jne 0x48509e
cmp dword [esi + 0x10c], ebx
je 0x485064
push dword [ebp - 0x10]
call dword [0x579340]
mov eax, dword [esi + 0x10c]
push 1
push eax
push esi
mov dword [ebp - 0x10], eax
mov dword [esi + 0x10c], ebx
call fcn.0049ffa0
push dword [ebp - 0x10]
mov edi, eax
mov dword [ebp - 0xc], edi
call dword [0x579340]
add esp, 0x14
test edi, edi
je 0x485064
push 1
push edi
push esi
mov byte [ebp + 0x13], 1
call fcn.00484050
mov edi, eax
add esp, 0xc
mov dword [ebp - 0xc], edi
test edi, edi
jne case.0x484652.1
push 0xe
push esi
call fcn.00483ee0
add esp, 8
or ebx, 0xffffffff
jmp case.0x484652.1
cmp byte [ebp - 5], bl
jne 0x48509e
push dword [ebp - 0x10]
call dword [0x579340]
mov eax, dword [esi + 0x110]
add esp, 4
mov dword [ebp - 0x10], eax
mov edi, 3
mov dword [esi + 0x110], ebx
jmp 0x4850a3
mov edi, 2
push 0
push 0
push esi
call fcn.00484050
push edi
push dword [ebp - 0x10]
push esi
call fcn.0049ffa0
mov edi, eax
add esp, 0x18
mov dword [ebp - 0xc], edi
test edi, edi
jne 0x4850d1
push 2
push esi
call fcn.00483ee0
add esp, 8
or ebx, 0xffffffff
push dword [ebp - 0x10]
call dword [0x579340]
add esp, 4
jmp case.0x484652.1
cmp byte [esi + 0xd8b], bl
je case.0x484652.1
push 8
push 0
push 0
push esi
call fcn.00482e30
add esp, 0x10
jmp case.0x484652.1
mov ecx, dword [ebp + 0xc]
sub esp, 0x10
mov eax, esp
movups xmm0, xmmword [ecx]
push esi
movups xmmword [eax], xmm0
call fcn.004a1e70
push 0xd
push esi
call fcn.00483ee0
mov ecx, dword [ebp - 0x24]
add esp, 0x1c
mov edx, dword [ebp - 0x18]
cmp edx, ecx
jl 0x485146
jg 0x485135
mov eax, dword [ebp - 0x1c]
cmp dword [ebp - 0x14], eax
jb 0x485149
push 0xb
push edx
push dword [ebp - 0x14]
push esi
call fcn.00482e30
add esp, 0x10
jmp case.0x484652.1
mov eax, dword [ebp - 0x1c]
push 0xb
push ecx
push eax
push esi
call fcn.00482e30
add esp, 0x10
jmp case.0x484652.1
mov eax, dword [esi + 0x18]
or ebx, 0xffffffff
test eax, eax
je 0x48518a
cmp byte [eax + 0x1bf], 0
je 0x485176
push dword [ebp + 8]
call fcn.00485b70
add esp, 4
push 0
push edi
push esi
call fcn.00484050
add esp, 0xc
test edi, edi
cmove edi, eax
mov dword [ebp - 0xc], edi
cmp byte [esi + 0xd92], 0
je 0x4851a3
mov eax, dword [esi + 0xda8]
cmp byte [eax + 0x20], 7
je 0x4851a3
push 0
jmp 0x4851a5
push 0xf
push esi
call fcn.00483ee0
add esp, 8
cmp dword [esi + 0x18], 0
je 0x4851f1
mov eax, dword [esi + 0x34]
cmp eax, 2
jl 0x4851f1
cmp eax, 8
jge 0x4851f1
mov edx, dword [ebp + 8]
cmp ebx, 0xffffffff
je 0x4851f4
push 0
push edx
call fcn.00484560
add esp, 8
test al, al
jne 0x4851f4
push 1
lea eax, [ebp - 0xc]
push eax
lea eax, [ebp + 0x13]
push eax
push dword [ebp + 0xc]
push esi
call fcn.00484400
mov edi, dword [ebp - 0xc]
add esp, 0x14
mov edx, dword [ebp + 8]
cmp dword [esi + 0x34], 0xf
jge 0x4852a6
test edi, edi
je 0x485264
push edx
call fcn.00485b70
mov ebx, dword [esi + 0x18]
add esp, 4
test ebx, ebx
je 0x485248
cmp byte [ebp + 0x13], 0
je 0x485257
push esi
call fcn.00482df0
push 1
push ebx
push esi
call fcn.0048b4d0
cmp edi, 0x1c
sete al
movzx eax, al
push eax
push ebx
push esi
call fcn.0048cd90
add esp, 0x1c
push 0xf
push esi
call fcn.00483ee0
add esp, 8
jmp 0x48529f
cmp dword [esi + 0x34], 2
jne 0x485257
push esi
call fcn.00406830
add esp, 4
push 0xf
push esi
call fcn.00483ee0
add esp, 8
jmp 0x48529f
cmp dword [esi + 0x18], 0
je 0x4852a2
push esi
call fcn.004a1ce0
add esp, 4
test eax, eax
je 0x4852a2
push 2
push dword [esi + 0x18]
mov edi, 0x2a
mov dword [ebp - 0xc], edi
call fcn.00493070
xor eax, eax
cmp dword [esi + 0x34], 0xe
setge al
add eax, 0xe
push eax
push esi
call fcn.00483ee0
add esp, 0x10
or ebx, 0xffffffff
cmp dword [esi + 0x34], 0xf
je 0x4852df
mov edx, dword [ebp + 8]
cmp ebx, 0xffffffff
je 0x4845e2
push 0
push edx
call fcn.00484560
add esp, 8
test al, al
jne 0x4845e2
mov dword [esi + 0x38], edi
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, 4
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [esi + 0x680]
test eax, eax
je 0x4852f2
push edi
push esi
call eax
mov ebx, dword [ebp + 8]
jmp 0x48530c
mov ebx, dword [ebp + 8]
lea eax, [esi + 0x3c]
push eax
push ebx
mov dword [eax + 0xc], 1
mov dword [eax + 0x10], esi
mov dword [eax + 0x14], edi
call fcn.00483f10
add esp, 8
push 0x10
push esi
call fcn.00483ee0
lea eax, [esi + 0x1c]
push eax
push esi
push dword [ebx + 0x38]
lea eax, [ebx + 0x34]
push eax
call fcn.00497db0
push esi
push ebx
call fcn.00486330
add esp, 0x20
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
mov eax, 2
pop ebx
mov esp, ebp
pop ebp
ret