Function at 0x457fe0
Capabilities:
Validate payment card number using luhn algorithm

Disassembly:
sub esp, 0x30
mov eax, dword [esp + 0x3c]
push ebx
mov ebx, dword [esp + 0x3c]
push ebp
mov ecx, dword [eax]
mov ebp, ecx
push esi
mov esi, dword [esp + 0x40]
push edi
push ecx
push 0xa
mov edx, dword [esi + 0xe0]
mov edi, edx
mov eax, edx
mov dword [esp + 0x38], ecx
push eax
mov dword [esp + 0x40], edx
mov dword [esp + 0x24], eax
mov dword [esp + 0x50], ecx
call sub.VCRUNTIME140.dll_memchr
mov ecx, eax
add esp, 0xc
test ecx, ecx
je 0x458be1
mov dword [esp + 0x28], 0xffffffff
nop
mov edx, dword [esp + 0x4c]
sub edi, ecx
lea eax, [edi - 1]
add eax, ebp
lea edi, [esi + 0x8bc]
mov dword [edx], eax
lea eax, [ecx + 1]
mov ecx, dword [esp + 0x18]
mov dword [esi + 0xe0], eax
sub eax, ecx
push eax
push ecx
push edi
call fcn.0043a0c0
add esp, 0xc
test eax, eax
jne 0x458240
cmp dword [esi + 0xdc], eax
jne 0x4580d3
push edi
call fcn.0043a120
push edi
mov ebp, eax
call fcn.0043a130
mov ecx, dword [ebx + 0x238]
add esp, 8
test dword [ecx + 0x44], 0x40000
je 0x4580bf
cmp ebp, 5
mov ecx, 5
sbb edi, edi
inc edi
cmp ebp, 5
cmova ebp, ecx
push ebp
push eax
push 0x49480c
call fcn.004506e0
add esp, 0xc
test eax, eax
mov eax, 2
cmovne eax, edi
lea edi, [esi + 0x8bc]
jmp 0x4580ca
push ebp
push eax
push esi
call fcn.004590d0
add esp, 0xc
cmp eax, 2
je 0x458c72
push edi
call fcn.0043a130
mov edi, eax
add esp, 4
mov dword [esp + 0x20], edi
mov cl, byte [edi]
cmp cl, 0xa
je 0x4584ea
cmp cl, 0xd
je 0x4584ea
mov ecx, dword [esi + 0xdc]
mov ebp, 2
lea eax, [ecx + 1]
mov dword [esi + 0xdc], eax
test ecx, ecx
jne 0x4583e2
mov eax, dword [ebx + 0x238]
mov eax, dword [eax + 0x44]
test al, 3
je 0x4582ae
lea eax, [esp + 0x44]
mov dword [esp + 0x18], ecx
push eax
lea ebp, [esi + 0xf0]
mov byte [esp + 0x48], cl
push ebp
lea eax, [esp + 0x19]
push eax
lea eax, [esp + 0x24]
push eax
lea eax, [esp + 0x34]
push eax
push 0x494b9c
push edi
call fcn.00441390
mov edx, eax
add esp, 0x1c
mov dword [esp + 0x1c], edx
cmp edx, 1
jne 0x458199
cmp dword [esp + 0x24], 2
jl 0x458199
push ebp
lea eax, [esp + 0x18]
push eax
push 0x494bb4
push edi
call fcn.00441390
add esp, 0x10
cmp eax, 2
jne 0x458195
mov byte [ebx + 0x4b7], 0
mov dword [esp + 0x1c], 4
mov byte [esp + 0x11], 0x20
jmp 0x4581c7
mov edx, dword [esp + 0x1c]
mov al, byte [esp + 0x44]
cmp al, 0x30
jl 0x4581a9
cmp al, 0x39
jle 0x458d1a
cmp edx, 4
jl 0x458248
cmp dword [ebp], 0x64
jl 0x458d1a
cmp byte [esp + 0x11], 0x20
jne 0x458d35
mov eax, dword [esp + 0x24]
lea ecx, [eax + eax*4]
mov eax, dword [esp + 0x18]
lea ecx, [eax + ecx*2]
mov eax, ecx
mov dword [esp + 0x18], ecx
sub eax, 0xa
je 0x4581e9
sub eax, 1
jne 0x458cce
lea edi, [ebx + 0x4b7]
mov byte [edi], cl
cmp dword [esi + 0x10c], 3
jne 0x45820d
cmp cl, 0x14
je 0x45820d
push 0x494c20
push esi
call fcn.0044b7f0
add esp, 8
cmp byte [edi], 0x14
jae 0x45822c
mov eax, dword [ebx + 0x480]
push 0x494c44
push esi
mov dword [eax], 0xffffffff
call fcn.0044b7f0
add esp, 8
cmp dword [esp + 0x1c], 0
jne 0x4582f6
mov byte [esi + 0x13d], 0
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x30
ret
test edx, edx
jne 0x458d35
push ebp
push 0x494c6c
push edi
call fcn.00441390
add esp, 0xc
mov byte [ebx + 0x4b7], 0xa
lea edi, [ebx + 0x4b7]
test eax, eax
jne 0x4582f6
lea eax, [esi + 0x8bc]
push eax
call fcn.0043a120
add esp, 4
push eax
lea eax, [esi + 0x8bc]
push eax
call fcn.0043a130
add esp, 4
push eax
push esi
call fcn.004590d0
add esp, 0xc
cmp eax, 1
jne 0x458237
mov dword [ebp], 0xc8
mov byte [edi], 0xa
jmp 0x4582f6
test eax, 0x40000
je 0x458237
lea ebp, [esi + 0xf0]
push ebp
lea eax, [esp + 0x16]
push eax
lea eax, [esp + 0x40]
push eax
lea eax, [esp + 0x48]
push eax
push 0x494ca0
push edi
call fcn.00441390
add esp, 0x18
cmp eax, 4
jne 0x458237
cmp byte [esp + 0x12], 0x20
jne 0x458237
lea edi, [ebx + 0x4b7]
mov byte [edi], 0xb
mov ecx, dword [ebp]
mov dl, byte [esi + 0xc2d]
mov dword [esi + 0xd58], ecx
movzx eax, byte [edi]
mov dword [esi + 0xd60], eax
mov al, byte [edi]
test dl, dl
je 0x458318
cmp dl, al
jbe 0x45831e
mov byte [esi + 0xc2d], al
mov eax, dword [esi + 0xc38]
or eax, dword [esi + 0xc3c]
je 0x458344
cmp byte [esi + 0xc84], 0
jne 0x458344
cmp ecx, 0x1a0
jne 0x458344
mov byte [esi + 0x140], 1
mov al, byte [edi]
cmp al, 0xa
jne 0x458362
push 0x4949f4
push esi
call fcn.0044b7f0
push 1
push ebx
call fcn.0044cb00
add esp, 0x10
jmp 0x458380
cmp al, 0x14
je 0x458374
cmp dword [esi + 0x10c], 2
jne 0x458380
cmp ecx, 0x65
jne 0x458380
mov eax, dword [ebx + 0x480]
mov dword [eax], 2
mov ecx, dword [ebp]
lea eax, [ecx - 0x64]
cmp eax, 0x63
setbe al
mov byte [esi + 0x141], al
sub ecx, 0xcc
je 0x4583ae
sub ecx, 0x64
jne 0x4583dd
cmp byte [esi + 0x3e0], cl
je 0x4583ae
mov byte [esi + 0xe20], 1
mov dword [esi + 0x80], 0
mov dword [esi + 0x84], 0
mov dword [esi + 0x88], 0
mov dword [esi + 0x8c], 0
mov byte [esi + 0x141], 1
mov ebp, 6
lea eax, [esi + 0x8bc]
push eax
call fcn.0043a130
mov edi, eax
lea eax, [esi + 0x8bc]
push eax
call fcn.0043a120
push eax
push 0
push edi
mov dword [esp + 0x58], eax
call sub.VCRUNTIME140.dll_memchr
add esp, 0x14
test eax, eax
jne 0x458d6c
mov ecx, dword [esi + 0xdc]
cmp ecx, 2
jl 0x458445
mov al, byte [edi]
cmp al, 0x20
je 0x458429
cmp al, 9
jne 0x45842e
cmp ecx, 2
jg 0x458445
push dword [esp + 0x44]
push 0x3a
push edi
call sub.VCRUNTIME140.dll_memchr
add esp, 0xc
test eax, eax
je 0x458d50
push dword [esp + 0x20]
push ebx
push esi
call fcn.00457040
add esp, 0xc
test eax, eax
jne 0x458240
cmp byte [esi + 0x6e2], al
je 0x458466
or ebp, 1
mov edi, dword [esi + 0xf0]
lea eax, [esi + 0x8bc]
push eax
call fcn.0043a120
push eax
push dword [esp + 0x28]
push 1
push esi
call fcn.0044b670
lea eax, [esi + 0x8bc]
push eax
call fcn.0043a120
push eax
push dword [esp + 0x3c]
lea eax, [edi - 0x64]
mov ecx, ebp
or ecx, 0x10
cmp eax, 0x64
cmovae ecx, ebp
push ecx
push esi
call fcn.0044b660
add esp, 0x28
test eax, eax
jne 0x458240
lea ebp, [esi + 0x8bc]
push ebp
call fcn.0043a120
add dword [esi + 0xd70], eax
push ebp
adc dword [esi + 0xd74], 0
call fcn.0043a120
add esp, 8
add dword [esi + 0xa0], eax
adc dword [esi + 0xa4], 0
jmp 0x458ba3
mov ecx, dword [esi + 0xf0]
lea eax, [ecx - 0x64]
cmp eax, 0x63
ja 0x458576
sub ecx, 0x64
je 0x458537
sub ecx, 1
je 0x45851b
lea ebp, [esi + 0x13d]
mov dword [esi + 0xdc], 0
mov byte [ebp], 1
jmp 0x4585de
cmp dword [esi + 0x10c], 2
je 0x458d88
lea ebp, [esi + 0x13d]
mov byte [ebp], 0
jmp 0x4585de
cmp dword [esi + 0x108], 0
lea ebp, [esi + 0x13d]
mov byte [ebp], 1
mov dword [esi + 0xdc], 0
jle 0x4585de
or dword [esi + 0xf4], 2
push 0
push esi
mov dword [esi + 0x108], 0
call fcn.0043bcc0
add esp, 8
jmp 0x4585de
mov eax, dword [esi + 0x80]
lea edx, [esi + 0x80]
and eax, dword [edx + 4]
lea edi, [esi + 0x13d]
mov byte [edi], 0
mov ebp, edi
cmp eax, 0xffffffff
jne 0x4585e4
cmp byte [esi + 0x142], 0
jne 0x4585e4
cmp byte [ebx + 0x1fe], 0
jne 0x4585e4
cmp byte [ebx + 0x4b7], 0xb
jne 0x4585e4
mov eax, dword [ebx + 0x238]
test dword [eax + 0x44], 0x40000
jne 0x4585e4
cmp byte [esi + 0xc84], 5
je 0x4585e4
push 0x494a8c
push esi
call fcn.0044b7f0
push 2
push ebx
call fcn.0044cb00
add esp, 0x10
lea edx, [esi + 0x80]
cmp byte [ebp], 0
jne 0x458674
cmp byte [esi + 0x143], 0
jne 0x458659
cmp byte [edx + 0xc2], 0
jne 0x458659
mov ecx, dword [edx]
mov eax, ecx
mov edx, dword [edx + 4]
and eax, edx
cmp eax, 0xffffffff
je 0x458674
mov eax, dword [esi + 0x4d8]
mov edi, dword [esi + 0x4dc]
or eax, edi
je 0x458634
cmp edx, edi
jg 0x458dbe
jl 0x458634
cmp ecx, dword [esi + 0x4d8]
ja 0x458dbe
push edx
push ecx
push esi
call fcn.0045a2b0
mov eax, dword [esi + 0x80]
add esp, 0xc
mov ecx, dword [esi + 0x84]
mov dword [esi + 0x88], eax
mov dword [esi + 0x8c], ecx
jmp 0x458674
mov dword [edx + 8], 0xffffffff
mov dword [edx + 0xc], 0xffffffff
mov dword [edx], 0xffffffff
mov dword [edx + 4], 0xffffffff
cmp byte [ebx + 0x1fe], 0
je 0x458704
mov eax, dword [esi + 0xf0]
cmp eax, 0x191
jne 0x458699
cmp dword [ebx + 0x2a8], 2
je 0x4586a9
jmp 0x4586be
cmp eax, 0x197
jne 0x4586be
cmp dword [ebx + 0x2ac], 2
jne 0x4586be
push 0x494ac4
push esi
call fcn.0044b7f0
add esp, 8
mov byte [esi + 0xd19], 1
cmp byte [ebx + 0x1fe], 0
je 0x458704
mov eax, dword [esi + 0xf0]
cmp eax, 0x191
jne 0x4586df
cmp dword [ebx + 0x330], 1
je 0x4586ef
jmp 0x458704
cmp eax, 0x197
jne 0x458704
cmp dword [ebx + 0x334], 1
jne 0x458704
push 0x494ac4
push esi
call fcn.0044b7f0
add esp, 8
mov byte [esi + 0xd19], 1
cmp dword [ebx + 0x330], 3
jne 0x458723
cmp dword [esi + 0xf0], 0x191
je 0x458723
mov dword [ebx + 0x330], 4
cmp dword [ebx + 0x334], 3
jne 0x458742
cmp dword [esi + 0xf0], 0x197
je 0x458742
mov dword [ebx + 0x334], 4
mov eax, dword [esi + 0xf0]
sub eax, 0x64
cmp eax, 0x64
sbb edi, edi
xor eax, eax
and edi, 0x10
cmp byte [esi + 0x6e2], al
setne al
add eax, 2
or edi, eax
lea eax, [esi + 0x8bc]
push eax
call fcn.0043a120
add esp, 4
mov dword [esp + 0x1c], eax
push eax
lea eax, [esi + 0x8bc]
push eax
call fcn.0043a130
add esp, 4
push eax
push edi
push esi
call fcn.0044b660
add esp, 0x10
test eax, eax
jne 0x458240
mov eax, dword [esp + 0x1c]
mov ecx, dword [esi + 0xa4]
cdq
add dword [esi + 0xd70], eax
push esi
adc dword [esi + 0xd74], edx
add eax, dword [esi + 0xa0]
mov dword [esi + 0xa0], eax
adc ecx, edx
mov dword [esp + 0x48], eax
mov dword [esi + 0xa4], ecx
mov edi, dword [esi + 0xf0]
mov dword [esp + 0x24], ecx
call fcn.004594d0
add esp, 4
test al, al
jne 0x458e5d
lea eax, [edi - 0x64]
cmp eax, 0x63
ja 0x458804
mov eax, dword [esp + 0x44]
mov dword [esi + 0xa8], eax
mov eax, dword [esp + 0x20]
mov dword [esi + 0xac], eax
jmp 0x458a2a
mov edi, dword [esi + 0xc]
xor dl, dl
mov dword [esi + 0xa8], 0
mov ecx, 0xffffffbf
mov dword [esi + 0xac], 0
mov eax, dword [esi + 0x608]
test eax, eax
mov dword [esp + 0x20], edi
cmovne ecx, dword [esp + 0x28]
mov byte [esp + 0x13], dl
cmp byte [esi + 0xd19], dl
je 0x458854
xor edi, edi
mov eax, 0x16
cmp byte [esi + 0x6dd], dl
cmovne edi, eax
jmp 0x458a22
cmp dword [esi + 0xd04], 0
jne 0x458865
mov byte [esp + 0x44], dl
test eax, eax
je 0x4588da
mov eax, dword [esi + 0xf0]
cmp eax, 0x191
je 0x45888a
cmp byte [edi + 0x208], 0
mov byte [esp + 0x44], dl
je 0x4588da
mov byte [esp + 0x44], dl
cmp eax, 0x12c
jge 0x4588da
push ecx
lea eax, [esi + 0x974]
push eax
call fcn.00459880
mov cl, al
add esp, 8
mov byte [esp + 0x44], cl
test cl, cl
jne 0x4588ab
mov byte [esi + 0xd19], 1
cmp dword [esi + 0x978], 8
jne 0x4588da
cmp byte [edi + 0x4b7], 0xb
jbe 0x4588da
push 0x4940a0
push esi
call fcn.0044b7f0
push 1
push edi
call fcn.0044cb00
add esp, 0x10
mov byte [esi + 0xc2c], 2
mov dl, byte [esp + 0x13]
mov al, dl
cmp byte [edi + 0x1fa], al
je 0x458922
mov ecx, dword [esi + 0xf0]
cmp ecx, 0x197
je 0x458906
cmp byte [edi + 0x208], al
je 0x458922
cmp ecx, 0x12c
jge 0x458922
lea eax, [esi + 0x984]
push 0xffffffffffffffbf
push eax
call fcn.00459880
add esp, 8
test al, al
jne 0x458922
mov byte [esi + 0xd19], 1
cmp byte [esp + 0x44], 0
jne 0x458998
test al, al
jne 0x458998
xor edi, edi
cmp dword [esi + 0xf0], 0x12c
jge 0x4589fc
cmp byte [esi + 0x980], al
jne 0x4589fc
mov eax, dword [esp + 0x20]
cmp byte [eax + 0x208], 0
je 0x4589fc
mov al, byte [esi + 0xc84]
test al, al
je 0x4589fc
cmp al, 5
je 0x4589fc
push dword [esi + 0xc88]
call dword [0x4a4028]
add esp, 4
mov dword [esi + 0x128], eax
test eax, eax
je 0x458e4e
mov byte [esi + 0x980], 1
jmp 0x4589fc
mov al, byte [esi + 0xc84]
xor edi, edi
test al, al
je 0x4589c9
cmp al, 5
je 0x4589c9
cmp byte [esi + 0xd28], 0
jne 0x4589c9
mov eax, dword [esp + 0x20]
push eax
push esi
call fcn.004592b0
mov edi, eax
add esp, 8
test edi, edi
jne 0x458e53
push dword [esi + 0x128]
call dword [0x4a4020]
push dword [esi + 0xc88]
mov dword [esi + 0x128], 0
call dword [0x4a4028]
add esp, 8
mov dword [esi + 0x128], eax
test eax, eax
je 0x458e4e
push esi
call fcn.004594d0
add esp, 4
test al, al
je 0x458a22
push dword [esi + 0xf0]
push 0x4940bc
push esi
call fcn.0044b720
add esp, 0xc
mov edi, 0x16
test edi, edi
jne 0x458e53
cmp dword [esi + 0xf0], 0x12c
jl 0x458b8d
cmp byte [ebx + 0x208], 0
jne case.default.0x458a72
cmp byte [ebx + 0x1fe], 0
jne case.default.0x458a72
cmp byte [esi + 0xd28], 0
jne case.default.0x458a72
movzx eax, byte [esi + 0xc84]
dec eax
cmp eax, 3
ja case.default.0x458a72
jmp dword [eax*4 + 0x458e7c]
push 0
push esi
call fcn.0043bcc0
add esp, 8
cmp byte [esi + 0x13f], 0
jne case.default.0x458a72
cmp dword [esi + 0xf0], 0x1a1
jne 0x458adf
cmp byte [esi + 0xd1b], 0
je 0x458adf
push 0x494afc
push esi
call fcn.0044b7f0
push dword [esi + 0xc88]
mov byte [esi + 0xd1c], 1
call dword [0x4a4028]
lea edi, [esi + 0x80]
mov dword [esi + 0x128], eax
push edi
push esi
call fcn.00450d10
add esp, 0x14
jmp 0x458b64
cmp byte [esi + 0x6de], 0
je 0x458b18
push 0x494b1c
push esi
call fcn.0044b7f0
add esp, 8
lea edi, [esi + 0x80]
cmp dword [esi + 0x108], 0
jle 0x458b64
or dword [esi + 0xf4], 2
mov dword [esi + 0x108], 0
jmp 0x458b64
push 0x494b48
push esi
call fcn.0044b7f0
push 2
push ebx
call fcn.0044cb00
lea edi, [esi + 0x80]
push edi
push esi
call fcn.00450d10
add esp, 0x18
test eax, eax
jne 0x458240
mov byte [esi + 0x13f], 1
cmp byte [esi + 0xd1b], al
je 0x458b64
mov dword [esi + 0x108], 3
jmp 0x458b64
lea edi, [esi + 0x80]
cmp byte [esi + 0xd28], 0
je 0x458b93
cmp dword [ebx + 0x254], 0xffffffff
je 0x458b93
push 0x494b74
push esi
call fcn.0044b7f0
add esp, 8
or dword [esi + 0xf4], 2
jmp 0x458b93
lea edi, [esi + 0x80]
cmp byte [ebp], 0
je 0x458dd9
lea ebp, [esi + 0x8bc]
push ebp
call fcn.0043a140
mov edi, dword [esi + 0xe0]
add esp, 4
cmp byte [edi], 0
je 0x45823e
mov ecx, dword [esp + 0x4c]
mov eax, edi
mov dword [esp + 0x18], eax
mov ebp, dword [ecx]
push ebp
push 0xa
push eax
mov dword [esp + 0x50], ebp
call sub.VCRUNTIME140.dll_memchr
mov ecx, eax
add esp, 0xc
test ecx, ecx
jne 0x458030
push dword [esp + 0x44]
lea ebp, [esi + 0x8bc]
push dword [esp + 0x1c]
push ebp
call fcn.0043a0c0
add esp, 0xc
test eax, eax
jne 0x458240
cmp dword [esi + 0xdc], eax
jne 0x45823e
push ebp
call fcn.0043a120
add esp, 4
push eax
push ebp
call fcn.0043a130
add esp, 4
push eax
push ebx
push esi
call fcn.00459180
add esp, 0x10
cmp eax, 2
jne 0x45823e
push eax
push ebx
mov byte [esi + 0x13d], 0
mov dword [esi + 0xd8], eax
call fcn.0044cb00
add esp, 8
cmp byte [esi + 0x702], 0
jne 0x45823e
push 0x494a44
push esi
call fcn.0044b720
add esp, 8
mov eax, 1
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x30
ret
push 2
push ebx
call fcn.0044cb00
add esp, 8
cmp byte [esi + 0x702], 0
je 0x458c57
mov eax, dword [esp + 0x4c]
mov byte [esi + 0x13d], 0
cmp dword [eax], 0
je 0x458caa
pop edi
mov dword [esi + 0xd8], 1
xor eax, eax
pop esi
pop ebp
pop ebx
add esp, 0x30
ret
mov ecx, dword [esp + 0x30]
mov dword [esi + 0xd8], 2
mov dword [eax], ecx
mov eax, dword [esp + 0x34]
pop edi
mov dword [esi + 0xe0], eax
xor eax, eax
pop esi
pop ebp
pop ebx
add esp, 0x30
ret
mov eax, 0x66666667
imul ecx
mov eax, 0x66666667
sar edx, 2
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
lea edx, [ecx + ecx*4]
mov ecx, dword [esp + 0x18]
add edx, edx
sub ecx, edx
imul dword [esp + 0x18]
push ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
push eax
push 0x494bf0
push esi
call fcn.0044b720
add esp, 0x10
mov eax, 1
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x30
ret
push 0x494bc4
push esi
call fcn.0044b720
add esp, 8
mov eax, 1
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x30
ret
push 0x494c78
push esi
call fcn.0044b720
add esp, 8
mov eax, 1
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x30
ret
mov eax, 0x494a2c
push eax
push esi
call fcn.0044b720
add esp, 8
mov eax, 8
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x30
ret
mov eax, 0x494a18
push eax
push esi
call fcn.0044b720
add esp, 8
mov eax, 8
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x30
ret
push str.Received_101__Switching_to_HTTP_2
push esi
call fcn.0044b7f0
add esp, 8
mov dword [esi + 0x10c], 3
mov byte [esi + 0x13d], 1
mov eax, 1
mov dword [esi + 0xdc], 0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x30
ret
push 0x490118
push esi
call fcn.0044b720
add esp, 8
mov eax, 0x3f
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x30
ret
cmp byte [esi + 0x147], 0
mov ecx, dword [esp + 0x50]
jne 0x458e0b
mov eax, dword [ebx + 0x238]
test dword [eax + 0x44], 0x40000
je 0x458e0e
cmp dword [esi + 0x678], 2
jne 0x458e0e
cmp dword [edi + 4], 0xffffffff
jg 0x458e0e
jl 0x458e0b
cmp dword [edi], 0xffffffff
ja 0x458e0e
mov byte [ecx], 1
cmp dword [esi + 0x88], 0
jne 0x458e25
cmp dword [esi + 0x8c], 0
jne 0x458e25
mov byte [ecx], 1
jmp 0x458e2a
cmp byte [ecx], 0
je 0x458e31
and dword [esi + 0xf4], 0xfffffffe
push dword [esp + 0x1c]
push dword [esp + 0x1c]
push 1
push esi
call fcn.0044b670
add esp, 0x10
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x30
ret
mov edi, 0x1b
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x30
ret
push edi
push 0x4940bc
push esi
call fcn.0044b720
add esp, 0xc
mov eax, 0x16
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x30
ret